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


/* File created by MIDL compiler version 5.01.0164 */
/* at Thu May 06 14:21:29 2010
 */
/* Compiler settings for .\09200_KompasAPI.odl:
    Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext
    error checks: allocation ref bounds_check enum stub_data 
*/
//@@MIDL_FILE_HEADING(  )


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

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

#ifndef __KAPI7Dual_h__
#define __KAPI7Dual_h__

#ifdef __cplusplus
extern "C"{
#endif 

/* Forward Declarations */ 

#ifndef __IKompasAPIObject_FWD_DEFINED__
#define __IKompasAPIObject_FWD_DEFINED__
typedef interface IKompasAPIObject IKompasAPIObject;
#endif 	/* __IKompasAPIObject_FWD_DEFINED__ */


#ifndef __IKompasCollection_FWD_DEFINED__
#define __IKompasCollection_FWD_DEFINED__
typedef interface IKompasCollection IKompasCollection;
#endif 	/* __IKompasCollection_FWD_DEFINED__ */


#ifndef __IKompasDocument_FWD_DEFINED__
#define __IKompasDocument_FWD_DEFINED__
typedef interface IKompasDocument IKompasDocument;
#endif 	/* __IKompasDocument_FWD_DEFINED__ */


#ifndef __IKompasDocument2D_FWD_DEFINED__
#define __IKompasDocument2D_FWD_DEFINED__
typedef interface IKompasDocument2D IKompasDocument2D;
#endif 	/* __IKompasDocument2D_FWD_DEFINED__ */


#ifndef __IKompasDocument3D_FWD_DEFINED__
#define __IKompasDocument3D_FWD_DEFINED__
typedef interface IKompasDocument3D IKompasDocument3D;
#endif 	/* __IKompasDocument3D_FWD_DEFINED__ */


#ifndef __IDrawingObject_FWD_DEFINED__
#define __IDrawingObject_FWD_DEFINED__
typedef interface IDrawingObject IDrawingObject;
#endif 	/* __IDrawingObject_FWD_DEFINED__ */


#ifndef __IDrawingObjects_FWD_DEFINED__
#define __IDrawingObjects_FWD_DEFINED__
typedef interface IDrawingObjects IDrawingObjects;
#endif 	/* __IDrawingObjects_FWD_DEFINED__ */


#ifndef __IDrawingObject1_FWD_DEFINED__
#define __IDrawingObject1_FWD_DEFINED__
typedef interface IDrawingObject1 IDrawingObject1;
#endif 	/* __IDrawingObject1_FWD_DEFINED__ */


#ifndef __IKompasDocument1_FWD_DEFINED__
#define __IKompasDocument1_FWD_DEFINED__
typedef interface IKompasDocument1 IKompasDocument1;
#endif 	/* __IKompasDocument1_FWD_DEFINED__ */


#ifndef __IKompasDocument2D1_FWD_DEFINED__
#define __IKompasDocument2D1_FWD_DEFINED__
typedef interface IKompasDocument2D1 IKompasDocument2D1;
#endif 	/* __IKompasDocument2D1_FWD_DEFINED__ */


#ifndef __IApplication_FWD_DEFINED__
#define __IApplication_FWD_DEFINED__
typedef interface IApplication IApplication;
#endif 	/* __IApplication_FWD_DEFINED__ */


#ifndef __IDocuments_FWD_DEFINED__
#define __IDocuments_FWD_DEFINED__
typedef interface IDocuments IDocuments;
#endif 	/* __IDocuments_FWD_DEFINED__ */


#ifndef __IDocumentFrame_FWD_DEFINED__
#define __IDocumentFrame_FWD_DEFINED__
typedef interface IDocumentFrame IDocumentFrame;
#endif 	/* __IDocumentFrame_FWD_DEFINED__ */


#ifndef __IDocumentFrames_FWD_DEFINED__
#define __IDocumentFrames_FWD_DEFINED__
typedef interface IDocumentFrames IDocumentFrames;
#endif 	/* __IDocumentFrames_FWD_DEFINED__ */


#ifndef __IDrawingDocument_FWD_DEFINED__
#define __IDrawingDocument_FWD_DEFINED__
typedef interface IDrawingDocument IDrawingDocument;
#endif 	/* __IDrawingDocument_FWD_DEFINED__ */


#ifndef __IFragmentDocument_FWD_DEFINED__
#define __IFragmentDocument_FWD_DEFINED__
typedef interface IFragmentDocument IFragmentDocument;
#endif 	/* __IFragmentDocument_FWD_DEFINED__ */


#ifndef __ISpecificationDocument_FWD_DEFINED__
#define __ISpecificationDocument_FWD_DEFINED__
typedef interface ISpecificationDocument ISpecificationDocument;
#endif 	/* __ISpecificationDocument_FWD_DEFINED__ */


#ifndef __ITextDocument_FWD_DEFINED__
#define __ITextDocument_FWD_DEFINED__
typedef interface ITextDocument ITextDocument;
#endif 	/* __ITextDocument_FWD_DEFINED__ */


#ifndef __IPartDocument_FWD_DEFINED__
#define __IPartDocument_FWD_DEFINED__
typedef interface IPartDocument IPartDocument;
#endif 	/* __IPartDocument_FWD_DEFINED__ */


#ifndef __IAssemblyDocument_FWD_DEFINED__
#define __IAssemblyDocument_FWD_DEFINED__
typedef interface IAssemblyDocument IAssemblyDocument;
#endif 	/* __IAssemblyDocument_FWD_DEFINED__ */


#ifndef __ISheetFormat_FWD_DEFINED__
#define __ISheetFormat_FWD_DEFINED__
typedef interface ISheetFormat ISheetFormat;
#endif 	/* __ISheetFormat_FWD_DEFINED__ */


#ifndef __IKompasError_FWD_DEFINED__
#define __IKompasError_FWD_DEFINED__
typedef interface IKompasError IKompasError;
#endif 	/* __IKompasError_FWD_DEFINED__ */


#ifndef __ILayoutSheets_FWD_DEFINED__
#define __ILayoutSheets_FWD_DEFINED__
typedef interface ILayoutSheets ILayoutSheets;
#endif 	/* __ILayoutSheets_FWD_DEFINED__ */


#ifndef __ILayoutSheet_FWD_DEFINED__
#define __ILayoutSheet_FWD_DEFINED__
typedef interface ILayoutSheet ILayoutSheet;
#endif 	/* __ILayoutSheet_FWD_DEFINED__ */


#ifndef __ICheckSum_FWD_DEFINED__
#define __ICheckSum_FWD_DEFINED__
typedef interface ICheckSum ICheckSum;
#endif 	/* __ICheckSum_FWD_DEFINED__ */


#ifndef __IProgressBarIndicator_FWD_DEFINED__
#define __IProgressBarIndicator_FWD_DEFINED__
typedef interface IProgressBarIndicator IProgressBarIndicator;
#endif 	/* __IProgressBarIndicator_FWD_DEFINED__ */


#ifndef __IUserDataStoragesMng_FWD_DEFINED__
#define __IUserDataStoragesMng_FWD_DEFINED__
typedef interface IUserDataStoragesMng IUserDataStoragesMng;
#endif 	/* __IUserDataStoragesMng_FWD_DEFINED__ */


#ifndef __IUserDataStorages_FWD_DEFINED__
#define __IUserDataStorages_FWD_DEFINED__
typedef interface IUserDataStorages IUserDataStorages;
#endif 	/* __IUserDataStorages_FWD_DEFINED__ */


#ifndef __IUserDataStorage_FWD_DEFINED__
#define __IUserDataStorage_FWD_DEFINED__
typedef interface IUserDataStorage IUserDataStorage;
#endif 	/* __IUserDataStorage_FWD_DEFINED__ */


#ifndef __IParametriticConstraint_FWD_DEFINED__
#define __IParametriticConstraint_FWD_DEFINED__
typedef interface IParametriticConstraint IParametriticConstraint;
#endif 	/* __IParametriticConstraint_FWD_DEFINED__ */


#ifndef __IDimensionText_FWD_DEFINED__
#define __IDimensionText_FWD_DEFINED__
typedef interface IDimensionText IDimensionText;
#endif 	/* __IDimensionText_FWD_DEFINED__ */


#ifndef __IDimensionParams_FWD_DEFINED__
#define __IDimensionParams_FWD_DEFINED__
typedef interface IDimensionParams IDimensionParams;
#endif 	/* __IDimensionParams_FWD_DEFINED__ */


#ifndef __ILoadCombination_FWD_DEFINED__
#define __ILoadCombination_FWD_DEFINED__
typedef interface ILoadCombination ILoadCombination;
#endif 	/* __ILoadCombination_FWD_DEFINED__ */


#ifndef __IFrameTreesManager_FWD_DEFINED__
#define __IFrameTreesManager_FWD_DEFINED__
typedef interface IFrameTreesManager IFrameTreesManager;
#endif 	/* __IFrameTreesManager_FWD_DEFINED__ */


#ifndef __IAttribute_FWD_DEFINED__
#define __IAttribute_FWD_DEFINED__
typedef interface IAttribute IAttribute;
#endif 	/* __IAttribute_FWD_DEFINED__ */


#ifndef __IColumnInfo_FWD_DEFINED__
#define __IColumnInfo_FWD_DEFINED__
typedef interface IColumnInfo IColumnInfo;
#endif 	/* __IColumnInfo_FWD_DEFINED__ */


#ifndef __IAttributeType_FWD_DEFINED__
#define __IAttributeType_FWD_DEFINED__
typedef interface IAttributeType IAttributeType;
#endif 	/* __IAttributeType_FWD_DEFINED__ */


#ifndef __IAttrTypeMng_FWD_DEFINED__
#define __IAttrTypeMng_FWD_DEFINED__
typedef interface IAttrTypeMng IAttrTypeMng;
#endif 	/* __IAttrTypeMng_FWD_DEFINED__ */


#ifndef __IVariable7_FWD_DEFINED__
#define __IVariable7_FWD_DEFINED__
typedef interface IVariable7 IVariable7;
#endif 	/* __IVariable7_FWD_DEFINED__ */


#ifndef __IMath2D_FWD_DEFINED__
#define __IMath2D_FWD_DEFINED__
typedef interface IMath2D IMath2D;
#endif 	/* __IMath2D_FWD_DEFINED__ */


#ifndef __ISelectionManager_FWD_DEFINED__
#define __ISelectionManager_FWD_DEFINED__
typedef interface ISelectionManager ISelectionManager;
#endif 	/* __ISelectionManager_FWD_DEFINED__ */


#ifndef __IChooseManager_FWD_DEFINED__
#define __IChooseManager_FWD_DEFINED__
typedef interface IChooseManager IChooseManager;
#endif 	/* __IChooseManager_FWD_DEFINED__ */


#ifndef __IStamp_FWD_DEFINED__
#define __IStamp_FWD_DEFINED__
typedef interface IStamp IStamp;
#endif 	/* __IStamp_FWD_DEFINED__ */


#ifndef __IPrintJob_FWD_DEFINED__
#define __IPrintJob_FWD_DEFINED__
typedef interface IPrintJob IPrintJob;
#endif 	/* __IPrintJob_FWD_DEFINED__ */


#ifndef __IPrintJob_Sheet_FWD_DEFINED__
#define __IPrintJob_Sheet_FWD_DEFINED__
typedef interface IPrintJob_Sheet IPrintJob_Sheet;
#endif 	/* __IPrintJob_Sheet_FWD_DEFINED__ */


#ifndef __IPrintJob_OutputParameters_FWD_DEFINED__
#define __IPrintJob_OutputParameters_FWD_DEFINED__
typedef interface IPrintJob_OutputParameters IPrintJob_OutputParameters;
#endif 	/* __IPrintJob_OutputParameters_FWD_DEFINED__ */


#ifndef __IProperty_FWD_DEFINED__
#define __IProperty_FWD_DEFINED__
typedef interface IProperty IProperty;
#endif 	/* __IProperty_FWD_DEFINED__ */


#ifndef __IPropertyMng_FWD_DEFINED__
#define __IPropertyMng_FWD_DEFINED__
typedef interface IPropertyMng IPropertyMng;
#endif 	/* __IPropertyMng_FWD_DEFINED__ */


#ifndef __IPropertyKeeper_FWD_DEFINED__
#define __IPropertyKeeper_FWD_DEFINED__
typedef interface IPropertyKeeper IPropertyKeeper;
#endif 	/* __IPropertyKeeper_FWD_DEFINED__ */


#ifndef __IReportProcess_FWD_DEFINED__
#define __IReportProcess_FWD_DEFINED__
typedef interface IReportProcess IReportProcess;
#endif 	/* __IReportProcess_FWD_DEFINED__ */


#ifndef __IReportFilter_FWD_DEFINED__
#define __IReportFilter_FWD_DEFINED__
typedef interface IReportFilter IReportFilter;
#endif 	/* __IReportFilter_FWD_DEFINED__ */


#ifndef __IProcessParam_FWD_DEFINED__
#define __IProcessParam_FWD_DEFINED__
typedef interface IProcessParam IProcessParam;
#endif 	/* __IProcessParam_FWD_DEFINED__ */


#ifndef __IPropertyTabs_FWD_DEFINED__
#define __IPropertyTabs_FWD_DEFINED__
typedef interface IPropertyTabs IPropertyTabs;
#endif 	/* __IPropertyTabs_FWD_DEFINED__ */


#ifndef __IPropertyControl_FWD_DEFINED__
#define __IPropertyControl_FWD_DEFINED__
typedef interface IPropertyControl IPropertyControl;
#endif 	/* __IPropertyControl_FWD_DEFINED__ */


#ifndef __IPropertyControl1_FWD_DEFINED__
#define __IPropertyControl1_FWD_DEFINED__
typedef interface IPropertyControl1 IPropertyControl1;
#endif 	/* __IPropertyControl1_FWD_DEFINED__ */


#ifndef __IPropertyControls_FWD_DEFINED__
#define __IPropertyControls_FWD_DEFINED__
typedef interface IPropertyControls IPropertyControls;
#endif 	/* __IPropertyControls_FWD_DEFINED__ */


#ifndef __IPropertyEdit_FWD_DEFINED__
#define __IPropertyEdit_FWD_DEFINED__
typedef interface IPropertyEdit IPropertyEdit;
#endif 	/* __IPropertyEdit_FWD_DEFINED__ */


#ifndef __IPropertySeparator_FWD_DEFINED__
#define __IPropertySeparator_FWD_DEFINED__
typedef interface IPropertySeparator IPropertySeparator;
#endif 	/* __IPropertySeparator_FWD_DEFINED__ */


#ifndef __IPropertyTab_FWD_DEFINED__
#define __IPropertyTab_FWD_DEFINED__
typedef interface IPropertyTab IPropertyTab;
#endif 	/* __IPropertyTab_FWD_DEFINED__ */


#ifndef __IPropertyList_FWD_DEFINED__
#define __IPropertyList_FWD_DEFINED__
typedef interface IPropertyList IPropertyList;
#endif 	/* __IPropertyList_FWD_DEFINED__ */


#ifndef __IPropertyCheckBox_FWD_DEFINED__
#define __IPropertyCheckBox_FWD_DEFINED__
typedef interface IPropertyCheckBox IPropertyCheckBox;
#endif 	/* __IPropertyCheckBox_FWD_DEFINED__ */


#ifndef __IPropertyMultiButton_FWD_DEFINED__
#define __IPropertyMultiButton_FWD_DEFINED__
typedef interface IPropertyMultiButton IPropertyMultiButton;
#endif 	/* __IPropertyMultiButton_FWD_DEFINED__ */


#ifndef __IPropertySlideBox_FWD_DEFINED__
#define __IPropertySlideBox_FWD_DEFINED__
typedef interface IPropertySlideBox IPropertySlideBox;
#endif 	/* __IPropertySlideBox_FWD_DEFINED__ */


#ifndef __IPropertyUserControl_FWD_DEFINED__
#define __IPropertyUserControl_FWD_DEFINED__
typedef interface IPropertyUserControl IPropertyUserControl;
#endif 	/* __IPropertyUserControl_FWD_DEFINED__ */


#ifndef __IPropertyGrid_FWD_DEFINED__
#define __IPropertyGrid_FWD_DEFINED__
typedef interface IPropertyGrid IPropertyGrid;
#endif 	/* __IPropertyGrid_FWD_DEFINED__ */


#ifndef __IPropertyManager_FWD_DEFINED__
#define __IPropertyManager_FWD_DEFINED__
typedef interface IPropertyManager IPropertyManager;
#endif 	/* __IPropertyManager_FWD_DEFINED__ */


#ifndef __IPropertyTextButton_FWD_DEFINED__
#define __IPropertyTextButton_FWD_DEFINED__
typedef interface IPropertyTextButton IPropertyTextButton;
#endif 	/* __IPropertyTextButton_FWD_DEFINED__ */


#ifndef __IPropertySpinEdit_FWD_DEFINED__
#define __IPropertySpinEdit_FWD_DEFINED__
typedef interface IPropertySpinEdit IPropertySpinEdit;
#endif 	/* __IPropertySpinEdit_FWD_DEFINED__ */


#ifndef __IPropertyFileName_FWD_DEFINED__
#define __IPropertyFileName_FWD_DEFINED__
typedef interface IPropertyFileName IPropertyFileName;
#endif 	/* __IPropertyFileName_FWD_DEFINED__ */


#ifndef __IPropertyColor_FWD_DEFINED__
#define __IPropertyColor_FWD_DEFINED__
typedef interface IPropertyColor IPropertyColor;
#endif 	/* __IPropertyColor_FWD_DEFINED__ */


#ifndef __IPropertyEditList_FWD_DEFINED__
#define __IPropertyEditList_FWD_DEFINED__
typedef interface IPropertyEditList IPropertyEditList;
#endif 	/* __IPropertyEditList_FWD_DEFINED__ */


#ifndef __IPropertyToolBar_FWD_DEFINED__
#define __IPropertyToolBar_FWD_DEFINED__
typedef interface IPropertyToolBar IPropertyToolBar;
#endif 	/* __IPropertyToolBar_FWD_DEFINED__ */


#ifndef __IPropertyBmpList_FWD_DEFINED__
#define __IPropertyBmpList_FWD_DEFINED__
typedef interface IPropertyBmpList IPropertyBmpList;
#endif 	/* __IPropertyBmpList_FWD_DEFINED__ */


#ifndef __IProcessInfoWindow_FWD_DEFINED__
#define __IProcessInfoWindow_FWD_DEFINED__
typedef interface IProcessInfoWindow IProcessInfoWindow;
#endif 	/* __IProcessInfoWindow_FWD_DEFINED__ */


#ifndef __IPropertyLibExplorer_FWD_DEFINED__
#define __IPropertyLibExplorer_FWD_DEFINED__
typedef interface IPropertyLibExplorer IPropertyLibExplorer;
#endif 	/* __IPropertyLibExplorer_FWD_DEFINED__ */


#ifndef __IViewsAndLayersManager_FWD_DEFINED__
#define __IViewsAndLayersManager_FWD_DEFINED__
typedef interface IViewsAndLayersManager IViewsAndLayersManager;
#endif 	/* __IViewsAndLayersManager_FWD_DEFINED__ */


#ifndef __IViews_FWD_DEFINED__
#define __IViews_FWD_DEFINED__
typedef interface IViews IViews;
#endif 	/* __IViews_FWD_DEFINED__ */


#ifndef __IView_FWD_DEFINED__
#define __IView_FWD_DEFINED__
typedef interface IView IView;
#endif 	/* __IView_FWD_DEFINED__ */


#ifndef __IAssociationView_FWD_DEFINED__
#define __IAssociationView_FWD_DEFINED__
typedef interface IAssociationView IAssociationView;
#endif 	/* __IAssociationView_FWD_DEFINED__ */


#ifndef __ILayerGroups_FWD_DEFINED__
#define __ILayerGroups_FWD_DEFINED__
typedef interface ILayerGroups ILayerGroups;
#endif 	/* __ILayerGroups_FWD_DEFINED__ */


#ifndef __ILayerGroup_FWD_DEFINED__
#define __ILayerGroup_FWD_DEFINED__
typedef interface ILayerGroup ILayerGroup;
#endif 	/* __ILayerGroup_FWD_DEFINED__ */


#ifndef __ILayers_FWD_DEFINED__
#define __ILayers_FWD_DEFINED__
typedef interface ILayers ILayers;
#endif 	/* __ILayers_FWD_DEFINED__ */


#ifndef __ILayer_FWD_DEFINED__
#define __ILayer_FWD_DEFINED__
typedef interface ILayer ILayer;
#endif 	/* __ILayer_FWD_DEFINED__ */


#ifndef __ILayerFilterCondition_FWD_DEFINED__
#define __ILayerFilterCondition_FWD_DEFINED__
typedef interface ILayerFilterCondition ILayerFilterCondition;
#endif 	/* __ILayerFilterCondition_FWD_DEFINED__ */


#ifndef __ILayerFilterConditions_FWD_DEFINED__
#define __ILayerFilterConditions_FWD_DEFINED__
typedef interface ILayerFilterConditions ILayerFilterConditions;
#endif 	/* __ILayerFilterConditions_FWD_DEFINED__ */


#ifndef __IViewDesignation_FWD_DEFINED__
#define __IViewDesignation_FWD_DEFINED__
typedef interface IViewDesignation IViewDesignation;
#endif 	/* __IViewDesignation_FWD_DEFINED__ */


#ifndef __IAssociationViewElements_FWD_DEFINED__
#define __IAssociationViewElements_FWD_DEFINED__
typedef interface IAssociationViewElements IAssociationViewElements;
#endif 	/* __IAssociationViewElements_FWD_DEFINED__ */


#ifndef __IBreakViewParam_FWD_DEFINED__
#define __IBreakViewParam_FWD_DEFINED__
typedef interface IBreakViewParam IBreakViewParam;
#endif 	/* __IBreakViewParam_FWD_DEFINED__ */


#ifndef __ICutViewParam_FWD_DEFINED__
#define __ICutViewParam_FWD_DEFINED__
typedef interface ICutViewParam ICutViewParam;
#endif 	/* __ICutViewParam_FWD_DEFINED__ */


#ifndef __ILibraryManager_FWD_DEFINED__
#define __ILibraryManager_FWD_DEFINED__
typedef interface ILibraryManager ILibraryManager;
#endif 	/* __ILibraryManager_FWD_DEFINED__ */


#ifndef __ILibrary_FWD_DEFINED__
#define __ILibrary_FWD_DEFINED__
typedef interface ILibrary ILibrary;
#endif 	/* __ILibrary_FWD_DEFINED__ */


#ifndef __IProceduresLibrary_FWD_DEFINED__
#define __IProceduresLibrary_FWD_DEFINED__
typedef interface IProceduresLibrary IProceduresLibrary;
#endif 	/* __IProceduresLibrary_FWD_DEFINED__ */


#ifndef __IProcedures_FWD_DEFINED__
#define __IProcedures_FWD_DEFINED__
typedef interface IProcedures IProcedures;
#endif 	/* __IProcedures_FWD_DEFINED__ */


#ifndef __IProcedure_FWD_DEFINED__
#define __IProcedure_FWD_DEFINED__
typedef interface IProcedure IProcedure;
#endif 	/* __IProcedure_FWD_DEFINED__ */


#ifndef __IInsertsLibrary_FWD_DEFINED__
#define __IInsertsLibrary_FWD_DEFINED__
typedef interface IInsertsLibrary IInsertsLibrary;
#endif 	/* __IInsertsLibrary_FWD_DEFINED__ */


#ifndef __IInserts_FWD_DEFINED__
#define __IInserts_FWD_DEFINED__
typedef interface IInserts IInserts;
#endif 	/* __IInserts_FWD_DEFINED__ */


#ifndef __IInsert_FWD_DEFINED__
#define __IInsert_FWD_DEFINED__
typedef interface IInsert IInsert;
#endif 	/* __IInsert_FWD_DEFINED__ */


#ifndef __IInsertsLibraries_FWD_DEFINED__
#define __IInsertsLibraries_FWD_DEFINED__
typedef interface IInsertsLibraries IInsertsLibraries;
#endif 	/* __IInsertsLibraries_FWD_DEFINED__ */


#ifndef __IProceduresLibraries_FWD_DEFINED__
#define __IProceduresLibraries_FWD_DEFINED__
typedef interface IProceduresLibraries IProceduresLibraries;
#endif 	/* __IProceduresLibraries_FWD_DEFINED__ */


#ifndef __IDocumentSettings_FWD_DEFINED__
#define __IDocumentSettings_FWD_DEFINED__
typedef interface IDocumentSettings IDocumentSettings;
#endif 	/* __IDocumentSettings_FWD_DEFINED__ */


#ifndef __IDocument2DSettings_FWD_DEFINED__
#define __IDocument2DSettings_FWD_DEFINED__
typedef interface IDocument2DSettings IDocument2DSettings;
#endif 	/* __IDocument2DSettings_FWD_DEFINED__ */


#ifndef __IDrawingDocumentSettings_FWD_DEFINED__
#define __IDrawingDocumentSettings_FWD_DEFINED__
typedef interface IDrawingDocumentSettings IDrawingDocumentSettings;
#endif 	/* __IDrawingDocumentSettings_FWD_DEFINED__ */


#ifndef __IFragmentDocumentSettings_FWD_DEFINED__
#define __IFragmentDocumentSettings_FWD_DEFINED__
typedef interface IFragmentDocumentSettings IFragmentDocumentSettings;
#endif 	/* __IFragmentDocumentSettings_FWD_DEFINED__ */


#ifndef __ISystemSettings_FWD_DEFINED__
#define __ISystemSettings_FWD_DEFINED__
typedef interface ISystemSettings ISystemSettings;
#endif 	/* __ISystemSettings_FWD_DEFINED__ */


#ifndef __ILibArraySettings_FWD_DEFINED__
#define __ILibArraySettings_FWD_DEFINED__
typedef interface ILibArraySettings ILibArraySettings;
#endif 	/* __ILibArraySettings_FWD_DEFINED__ */


#ifndef __ILibItemSettings_FWD_DEFINED__
#define __ILibItemSettings_FWD_DEFINED__
typedef interface ILibItemSettings ILibItemSettings;
#endif 	/* __ILibItemSettings_FWD_DEFINED__ */


#ifndef __ISpecificationDescriptions_FWD_DEFINED__
#define __ISpecificationDescriptions_FWD_DEFINED__
typedef interface ISpecificationDescriptions ISpecificationDescriptions;
#endif 	/* __ISpecificationDescriptions_FWD_DEFINED__ */


#ifndef __ISpecificationDescription_FWD_DEFINED__
#define __ISpecificationDescription_FWD_DEFINED__
typedef interface ISpecificationDescription ISpecificationDescription;
#endif 	/* __ISpecificationDescription_FWD_DEFINED__ */


#ifndef __ISpecificationStyle_FWD_DEFINED__
#define __ISpecificationStyle_FWD_DEFINED__
typedef interface ISpecificationStyle ISpecificationStyle;
#endif 	/* __ISpecificationStyle_FWD_DEFINED__ */


#ifndef __ISpecificationColumnStyles_FWD_DEFINED__
#define __ISpecificationColumnStyles_FWD_DEFINED__
typedef interface ISpecificationColumnStyles ISpecificationColumnStyles;
#endif 	/* __ISpecificationColumnStyles_FWD_DEFINED__ */


#ifndef __ISpecificationColumnStyle_FWD_DEFINED__
#define __ISpecificationColumnStyle_FWD_DEFINED__
typedef interface ISpecificationColumnStyle ISpecificationColumnStyle;
#endif 	/* __ISpecificationColumnStyle_FWD_DEFINED__ */


#ifndef __ISpecificationSectionStyles_FWD_DEFINED__
#define __ISpecificationSectionStyles_FWD_DEFINED__
typedef interface ISpecificationSectionStyles ISpecificationSectionStyles;
#endif 	/* __ISpecificationSectionStyles_FWD_DEFINED__ */


#ifndef __ISpecificationSectionStyle_FWD_DEFINED__
#define __ISpecificationSectionStyle_FWD_DEFINED__
typedef interface ISpecificationSectionStyle ISpecificationSectionStyle;
#endif 	/* __ISpecificationSectionStyle_FWD_DEFINED__ */


#ifndef __IAdditionalBlockStyles_FWD_DEFINED__
#define __IAdditionalBlockStyles_FWD_DEFINED__
typedef interface IAdditionalBlockStyles IAdditionalBlockStyles;
#endif 	/* __IAdditionalBlockStyles_FWD_DEFINED__ */


#ifndef __IAdditionalBlockStyle_FWD_DEFINED__
#define __IAdditionalBlockStyle_FWD_DEFINED__
typedef interface IAdditionalBlockStyle IAdditionalBlockStyle;
#endif 	/* __IAdditionalBlockStyle_FWD_DEFINED__ */


#ifndef __ISpecificationTuning_FWD_DEFINED__
#define __ISpecificationTuning_FWD_DEFINED__
typedef interface ISpecificationTuning ISpecificationTuning;
#endif 	/* __ISpecificationTuning_FWD_DEFINED__ */


#ifndef __ISpecificationTuningSections_FWD_DEFINED__
#define __ISpecificationTuningSections_FWD_DEFINED__
typedef interface ISpecificationTuningSections ISpecificationTuningSections;
#endif 	/* __ISpecificationTuningSections_FWD_DEFINED__ */


#ifndef __ISpecificationTuningSection_FWD_DEFINED__
#define __ISpecificationTuningSection_FWD_DEFINED__
typedef interface ISpecificationTuningSection ISpecificationTuningSection;
#endif 	/* __ISpecificationTuningSection_FWD_DEFINED__ */


#ifndef __ISpecificationSubsections_FWD_DEFINED__
#define __ISpecificationSubsections_FWD_DEFINED__
typedef interface ISpecificationSubsections ISpecificationSubsections;
#endif 	/* __ISpecificationSubsections_FWD_DEFINED__ */


#ifndef __ISpecificationSubsection_FWD_DEFINED__
#define __ISpecificationSubsection_FWD_DEFINED__
typedef interface ISpecificationSubsection ISpecificationSubsection;
#endif 	/* __ISpecificationSubsection_FWD_DEFINED__ */


#ifndef __IAdditionalBlockTunings_FWD_DEFINED__
#define __IAdditionalBlockTunings_FWD_DEFINED__
typedef interface IAdditionalBlockTunings IAdditionalBlockTunings;
#endif 	/* __IAdditionalBlockTunings_FWD_DEFINED__ */


#ifndef __IAdditionalBlockTuning_FWD_DEFINED__
#define __IAdditionalBlockTuning_FWD_DEFINED__
typedef interface IAdditionalBlockTuning IAdditionalBlockTuning;
#endif 	/* __IAdditionalBlockTuning_FWD_DEFINED__ */


#ifndef __IAdditionalBlockSectionTunings_FWD_DEFINED__
#define __IAdditionalBlockSectionTunings_FWD_DEFINED__
typedef interface IAdditionalBlockSectionTunings IAdditionalBlockSectionTunings;
#endif 	/* __IAdditionalBlockSectionTunings_FWD_DEFINED__ */


#ifndef __IAdditionalBlockSectionTuning_FWD_DEFINED__
#define __IAdditionalBlockSectionTuning_FWD_DEFINED__
typedef interface IAdditionalBlockSectionTuning IAdditionalBlockSectionTuning;
#endif 	/* __IAdditionalBlockSectionTuning_FWD_DEFINED__ */


#ifndef __ISpecificationBaseObjects_FWD_DEFINED__
#define __ISpecificationBaseObjects_FWD_DEFINED__
typedef interface ISpecificationBaseObjects ISpecificationBaseObjects;
#endif 	/* __ISpecificationBaseObjects_FWD_DEFINED__ */


#ifndef __ISpecificationCommentObjects_FWD_DEFINED__
#define __ISpecificationCommentObjects_FWD_DEFINED__
typedef interface ISpecificationCommentObjects ISpecificationCommentObjects;
#endif 	/* __ISpecificationCommentObjects_FWD_DEFINED__ */


#ifndef __ISpecificationObject_FWD_DEFINED__
#define __ISpecificationObject_FWD_DEFINED__
typedef interface ISpecificationObject ISpecificationObject;
#endif 	/* __ISpecificationObject_FWD_DEFINED__ */


#ifndef __ISpecificationBaseObject_FWD_DEFINED__
#define __ISpecificationBaseObject_FWD_DEFINED__
typedef interface ISpecificationBaseObject ISpecificationBaseObject;
#endif 	/* __ISpecificationBaseObject_FWD_DEFINED__ */


#ifndef __ISpecificationCommentObject_FWD_DEFINED__
#define __ISpecificationCommentObject_FWD_DEFINED__
typedef interface ISpecificationCommentObject ISpecificationCommentObject;
#endif 	/* __ISpecificationCommentObject_FWD_DEFINED__ */


#ifndef __ISpecificationColumns_FWD_DEFINED__
#define __ISpecificationColumns_FWD_DEFINED__
typedef interface ISpecificationColumns ISpecificationColumns;
#endif 	/* __ISpecificationColumns_FWD_DEFINED__ */


#ifndef __ISpecificationColumn_FWD_DEFINED__
#define __ISpecificationColumn_FWD_DEFINED__
typedef interface ISpecificationColumn ISpecificationColumn;
#endif 	/* __ISpecificationColumn_FWD_DEFINED__ */


#ifndef __ISpecificationColumnItems_FWD_DEFINED__
#define __ISpecificationColumnItems_FWD_DEFINED__
typedef interface ISpecificationColumnItems ISpecificationColumnItems;
#endif 	/* __ISpecificationColumnItems_FWD_DEFINED__ */


#ifndef __ISpecificationColumnItem_FWD_DEFINED__
#define __ISpecificationColumnItem_FWD_DEFINED__
typedef interface ISpecificationColumnItem ISpecificationColumnItem;
#endif 	/* __ISpecificationColumnItem_FWD_DEFINED__ */


#ifndef __IAttachedDocuments_FWD_DEFINED__
#define __IAttachedDocuments_FWD_DEFINED__
typedef interface IAttachedDocuments IAttachedDocuments;
#endif 	/* __IAttachedDocuments_FWD_DEFINED__ */


#ifndef __IAttachedDocument_FWD_DEFINED__
#define __IAttachedDocument_FWD_DEFINED__
typedef interface IAttachedDocument IAttachedDocument;
#endif 	/* __IAttachedDocument_FWD_DEFINED__ */


#ifndef __ITextStyle_FWD_DEFINED__
#define __ITextStyle_FWD_DEFINED__
typedef interface ITextStyle ITextStyle;
#endif 	/* __ITextStyle_FWD_DEFINED__ */


#ifndef __ITextFont_FWD_DEFINED__
#define __ITextFont_FWD_DEFINED__
typedef interface ITextFont ITextFont;
#endif 	/* __ITextFont_FWD_DEFINED__ */


#ifndef __ITabulators_FWD_DEFINED__
#define __ITabulators_FWD_DEFINED__
typedef interface ITabulators ITabulators;
#endif 	/* __ITabulators_FWD_DEFINED__ */


#ifndef __ITabulator_FWD_DEFINED__
#define __ITabulator_FWD_DEFINED__
typedef interface ITabulator ITabulator;
#endif 	/* __ITabulator_FWD_DEFINED__ */


#ifndef __IText_FWD_DEFINED__
#define __IText_FWD_DEFINED__
typedef interface IText IText;
#endif 	/* __IText_FWD_DEFINED__ */


#ifndef __ITextLine_FWD_DEFINED__
#define __ITextLine_FWD_DEFINED__
typedef interface ITextLine ITextLine;
#endif 	/* __ITextLine_FWD_DEFINED__ */


#ifndef __ITextItem_FWD_DEFINED__
#define __ITextItem_FWD_DEFINED__
typedef interface ITextItem ITextItem;
#endif 	/* __ITextItem_FWD_DEFINED__ */


#ifndef __IInsertionParameters_FWD_DEFINED__
#define __IInsertionParameters_FWD_DEFINED__
typedef interface IInsertionParameters IInsertionParameters;
#endif 	/* __IInsertionParameters_FWD_DEFINED__ */


#ifndef __ITableCell_FWD_DEFINED__
#define __ITableCell_FWD_DEFINED__
typedef interface ITableCell ITableCell;
#endif 	/* __ITableCell_FWD_DEFINED__ */


#ifndef __ITable_FWD_DEFINED__
#define __ITable_FWD_DEFINED__
typedef interface ITable ITable;
#endif 	/* __ITable_FWD_DEFINED__ */


#ifndef __ITableRange_FWD_DEFINED__
#define __ITableRange_FWD_DEFINED__
typedef interface ITableRange ITableRange;
#endif 	/* __ITableRange_FWD_DEFINED__ */


#ifndef __ICellFormat_FWD_DEFINED__
#define __ICellFormat_FWD_DEFINED__
typedef interface ICellFormat ICellFormat;
#endif 	/* __ICellFormat_FWD_DEFINED__ */


#ifndef __ICellBoundaries_FWD_DEFINED__
#define __ICellBoundaries_FWD_DEFINED__
typedef interface ICellBoundaries ICellBoundaries;
#endif 	/* __ICellBoundaries_FWD_DEFINED__ */


#ifndef __IConverter_FWD_DEFINED__
#define __IConverter_FWD_DEFINED__
typedef interface IConverter IConverter;
#endif 	/* __IConverter_FWD_DEFINED__ */


#ifndef __ksPropertyManagerNotify_FWD_DEFINED__
#define __ksPropertyManagerNotify_FWD_DEFINED__
typedef interface ksPropertyManagerNotify ksPropertyManagerNotify;
#endif 	/* __ksPropertyManagerNotify_FWD_DEFINED__ */


#ifndef __ksPropertyUserControlNotify_FWD_DEFINED__
#define __ksPropertyUserControlNotify_FWD_DEFINED__
typedef interface ksPropertyUserControlNotify ksPropertyUserControlNotify;
#endif 	/* __ksPropertyUserControlNotify_FWD_DEFINED__ */


#ifndef __ksDocumentFrameNotify_FWD_DEFINED__
#define __ksDocumentFrameNotify_FWD_DEFINED__
typedef interface ksDocumentFrameNotify ksDocumentFrameNotify;
#endif 	/* __ksDocumentFrameNotify_FWD_DEFINED__ */


#ifndef __ksDrawingObjectNotify_FWD_DEFINED__
#define __ksDrawingObjectNotify_FWD_DEFINED__
typedef interface ksDrawingObjectNotify ksDrawingObjectNotify;
#endif 	/* __ksDrawingObjectNotify_FWD_DEFINED__ */


#ifndef __ksViewsAndLayersManagerNotify_FWD_DEFINED__
#define __ksViewsAndLayersManagerNotify_FWD_DEFINED__
typedef interface ksViewsAndLayersManagerNotify ksViewsAndLayersManagerNotify;
#endif 	/* __ksViewsAndLayersManagerNotify_FWD_DEFINED__ */


#ifndef __ksLibraryManagerNotify_FWD_DEFINED__
#define __ksLibraryManagerNotify_FWD_DEFINED__
typedef interface ksLibraryManagerNotify ksLibraryManagerNotify;
#endif 	/* __ksLibraryManagerNotify_FWD_DEFINED__ */


#ifndef __ksSpecificationDescriptionNotify_FWD_DEFINED__
#define __ksSpecificationDescriptionNotify_FWD_DEFINED__
typedef interface ksSpecificationDescriptionNotify ksSpecificationDescriptionNotify;
#endif 	/* __ksSpecificationDescriptionNotify_FWD_DEFINED__ */


#ifndef __ksSpecificationObjectNotify_FWD_DEFINED__
#define __ksSpecificationObjectNotify_FWD_DEFINED__
typedef interface ksSpecificationObjectNotify ksSpecificationObjectNotify;
#endif 	/* __ksSpecificationObjectNotify_FWD_DEFINED__ */


#ifndef __ksLayoutSheetsNotify_FWD_DEFINED__
#define __ksLayoutSheetsNotify_FWD_DEFINED__
typedef interface ksLayoutSheetsNotify ksLayoutSheetsNotify;
#endif 	/* __ksLayoutSheetsNotify_FWD_DEFINED__ */


#ifndef __ksModelObjectNotify_FWD_DEFINED__
#define __ksModelObjectNotify_FWD_DEFINED__
typedef interface ksModelObjectNotify ksModelObjectNotify;
#endif 	/* __ksModelObjectNotify_FWD_DEFINED__ */


#ifndef __ksDocument3DNotify7_FWD_DEFINED__
#define __ksDocument3DNotify7_FWD_DEFINED__
typedef interface ksDocument3DNotify7 ksDocument3DNotify7;
#endif 	/* __ksDocument3DNotify7_FWD_DEFINED__ */


#ifndef __IModelObjectNotifyResult_FWD_DEFINED__
#define __IModelObjectNotifyResult_FWD_DEFINED__
typedef interface IModelObjectNotifyResult IModelObjectNotifyResult;
#endif 	/* __IModelObjectNotifyResult_FWD_DEFINED__ */


#ifndef __IKompasDocument3DNotifyResult_FWD_DEFINED__
#define __IKompasDocument3DNotifyResult_FWD_DEFINED__
typedef interface IKompasDocument3DNotifyResult IKompasDocument3DNotifyResult;
#endif 	/* __IKompasDocument3DNotifyResult_FWD_DEFINED__ */


#ifndef __IModelObject_FWD_DEFINED__
#define __IModelObject_FWD_DEFINED__
typedef interface IModelObject IModelObject;
#endif 	/* __IModelObject_FWD_DEFINED__ */


#ifndef __IModelObjects_FWD_DEFINED__
#define __IModelObjects_FWD_DEFINED__
typedef interface IModelObjects IModelObjects;
#endif 	/* __IModelObjects_FWD_DEFINED__ */


#ifndef __IFeature7_FWD_DEFINED__
#define __IFeature7_FWD_DEFINED__
typedef interface IFeature7 IFeature7;
#endif 	/* __IFeature7_FWD_DEFINED__ */


#ifndef __IParts7_FWD_DEFINED__
#define __IParts7_FWD_DEFINED__
typedef interface IParts7 IParts7;
#endif 	/* __IParts7_FWD_DEFINED__ */


#ifndef __IPart7_FWD_DEFINED__
#define __IPart7_FWD_DEFINED__
typedef interface IPart7 IPart7;
#endif 	/* __IPart7_FWD_DEFINED__ */


#ifndef __IModelContainer_FWD_DEFINED__
#define __IModelContainer_FWD_DEFINED__
typedef interface IModelContainer IModelContainer;
#endif 	/* __IModelContainer_FWD_DEFINED__ */


#ifndef __ISketchs_FWD_DEFINED__
#define __ISketchs_FWD_DEFINED__
typedef interface ISketchs ISketchs;
#endif 	/* __ISketchs_FWD_DEFINED__ */


#ifndef __IExtrusions_FWD_DEFINED__
#define __IExtrusions_FWD_DEFINED__
typedef interface IExtrusions IExtrusions;
#endif 	/* __IExtrusions_FWD_DEFINED__ */


#ifndef __IVariableTable_FWD_DEFINED__
#define __IVariableTable_FWD_DEFINED__
typedef interface IVariableTable IVariableTable;
#endif 	/* __IVariableTable_FWD_DEFINED__ */


#ifndef __ISketch_FWD_DEFINED__
#define __ISketch_FWD_DEFINED__
typedef interface ISketch ISketch;
#endif 	/* __ISketch_FWD_DEFINED__ */


#ifndef __IMassInertiaParam7_FWD_DEFINED__
#define __IMassInertiaParam7_FWD_DEFINED__
typedef interface IMassInertiaParam7 IMassInertiaParam7;
#endif 	/* __IMassInertiaParam7_FWD_DEFINED__ */


#ifndef __IExtrusion_FWD_DEFINED__
#define __IExtrusion_FWD_DEFINED__
typedef interface IExtrusion IExtrusion;
#endif 	/* __IExtrusion_FWD_DEFINED__ */


#ifndef __IThinParameters_FWD_DEFINED__
#define __IThinParameters_FWD_DEFINED__
typedef interface IThinParameters IThinParameters;
#endif 	/* __IThinParameters_FWD_DEFINED__ */


#ifndef __ICutExtrusion_FWD_DEFINED__
#define __ICutExtrusion_FWD_DEFINED__
typedef interface ICutExtrusion ICutExtrusion;
#endif 	/* __ICutExtrusion_FWD_DEFINED__ */


#ifndef __IChooseBodies7_FWD_DEFINED__
#define __IChooseBodies7_FWD_DEFINED__
typedef interface IChooseBodies7 IChooseBodies7;
#endif 	/* __IChooseBodies7_FWD_DEFINED__ */


#ifndef __IBody7_FWD_DEFINED__
#define __IBody7_FWD_DEFINED__
typedef interface IBody7 IBody7;
#endif 	/* __IBody7_FWD_DEFINED__ */


#ifndef __ISheetMetalBodies_FWD_DEFINED__
#define __ISheetMetalBodies_FWD_DEFINED__
typedef interface ISheetMetalBodies ISheetMetalBodies;
#endif 	/* __ISheetMetalBodies_FWD_DEFINED__ */


#ifndef __ISheetMetalBody_FWD_DEFINED__
#define __ISheetMetalBody_FWD_DEFINED__
typedef interface ISheetMetalBody ISheetMetalBody;
#endif 	/* __ISheetMetalBody_FWD_DEFINED__ */


#ifndef __ISheetMetalContainer_FWD_DEFINED__
#define __ISheetMetalContainer_FWD_DEFINED__
typedef interface ISheetMetalContainer ISheetMetalContainer;
#endif 	/* __ISheetMetalContainer_FWD_DEFINED__ */


#ifndef __IPoints3D_FWD_DEFINED__
#define __IPoints3D_FWD_DEFINED__
typedef interface IPoints3D IPoints3D;
#endif 	/* __IPoints3D_FWD_DEFINED__ */


#ifndef __IPoint3D_FWD_DEFINED__
#define __IPoint3D_FWD_DEFINED__
typedef interface IPoint3D IPoint3D;
#endif 	/* __IPoint3D_FWD_DEFINED__ */


#ifndef __IPoint3DParamDisplace_FWD_DEFINED__
#define __IPoint3DParamDisplace_FWD_DEFINED__
typedef interface IPoint3DParamDisplace IPoint3DParamDisplace;
#endif 	/* __IPoint3DParamDisplace_FWD_DEFINED__ */


#ifndef __IPoint3DParamIntersect_FWD_DEFINED__
#define __IPoint3DParamIntersect_FWD_DEFINED__
typedef interface IPoint3DParamIntersect IPoint3DParamIntersect;
#endif 	/* __IPoint3DParamIntersect_FWD_DEFINED__ */


#ifndef __IPoint3DParamCenter_FWD_DEFINED__
#define __IPoint3DParamCenter_FWD_DEFINED__
typedef interface IPoint3DParamCenter IPoint3DParamCenter;
#endif 	/* __IPoint3DParamCenter_FWD_DEFINED__ */


#ifndef __IPoint3DParamCurve_FWD_DEFINED__
#define __IPoint3DParamCurve_FWD_DEFINED__
typedef interface IPoint3DParamCurve IPoint3DParamCurve;
#endif 	/* __IPoint3DParamCurve_FWD_DEFINED__ */


#ifndef __IPoint3DParamSurface_FWD_DEFINED__
#define __IPoint3DParamSurface_FWD_DEFINED__
typedef interface IPoint3DParamSurface IPoint3DParamSurface;
#endif 	/* __IPoint3DParamSurface_FWD_DEFINED__ */


#ifndef __IPoint3DParamProjection_FWD_DEFINED__
#define __IPoint3DParamProjection_FWD_DEFINED__
typedef interface IPoint3DParamProjection IPoint3DParamProjection;
#endif 	/* __IPoint3DParamProjection_FWD_DEFINED__ */


#ifndef __ISheetMetalBends_FWD_DEFINED__
#define __ISheetMetalBends_FWD_DEFINED__
typedef interface ISheetMetalBends ISheetMetalBends;
#endif 	/* __ISheetMetalBends_FWD_DEFINED__ */


#ifndef __ISheetMetalBend_FWD_DEFINED__
#define __ISheetMetalBend_FWD_DEFINED__
typedef interface ISheetMetalBend ISheetMetalBend;
#endif 	/* __ISheetMetalBend_FWD_DEFINED__ */


#ifndef __ISheetMetalLineBends_FWD_DEFINED__
#define __ISheetMetalLineBends_FWD_DEFINED__
typedef interface ISheetMetalLineBends ISheetMetalLineBends;
#endif 	/* __ISheetMetalLineBends_FWD_DEFINED__ */


#ifndef __ISheetMetalLineBend_FWD_DEFINED__
#define __ISheetMetalLineBend_FWD_DEFINED__
typedef interface ISheetMetalLineBend ISheetMetalLineBend;
#endif 	/* __ISheetMetalLineBend_FWD_DEFINED__ */


#ifndef __ISourcePart7Params_FWD_DEFINED__
#define __ISourcePart7Params_FWD_DEFINED__
typedef interface ISourcePart7Params ISourcePart7Params;
#endif 	/* __ISourcePart7Params_FWD_DEFINED__ */


#ifndef __ISheetMetalHole_FWD_DEFINED__
#define __ISheetMetalHole_FWD_DEFINED__
typedef interface ISheetMetalHole ISheetMetalHole;
#endif 	/* __ISheetMetalHole_FWD_DEFINED__ */


#ifndef __ISheetMetalHoles_FWD_DEFINED__
#define __ISheetMetalHoles_FWD_DEFINED__
typedef interface ISheetMetalHoles ISheetMetalHoles;
#endif 	/* __ISheetMetalHoles_FWD_DEFINED__ */


#ifndef __ISheetMetalCut_FWD_DEFINED__
#define __ISheetMetalCut_FWD_DEFINED__
typedef interface ISheetMetalCut ISheetMetalCut;
#endif 	/* __ISheetMetalCut_FWD_DEFINED__ */


#ifndef __ISheetMetalCuts_FWD_DEFINED__
#define __ISheetMetalCuts_FWD_DEFINED__
typedef interface ISheetMetalCuts ISheetMetalCuts;
#endif 	/* __ISheetMetalCuts_FWD_DEFINED__ */


#ifndef __ISymbols3DContainer_FWD_DEFINED__
#define __ISymbols3DContainer_FWD_DEFINED__
typedef interface ISymbols3DContainer ISymbols3DContainer;
#endif 	/* __ISymbols3DContainer_FWD_DEFINED__ */


#ifndef __ILineDimensions3D_FWD_DEFINED__
#define __ILineDimensions3D_FWD_DEFINED__
typedef interface ILineDimensions3D ILineDimensions3D;
#endif 	/* __ILineDimensions3D_FWD_DEFINED__ */


#ifndef __IBaseLineDimension3D_FWD_DEFINED__
#define __IBaseLineDimension3D_FWD_DEFINED__
typedef interface IBaseLineDimension3D IBaseLineDimension3D;
#endif 	/* __IBaseLineDimension3D_FWD_DEFINED__ */


#ifndef __ILineDimension3D_FWD_DEFINED__
#define __ILineDimension3D_FWD_DEFINED__
typedef interface ILineDimension3D ILineDimension3D;
#endif 	/* __ILineDimension3D_FWD_DEFINED__ */


#ifndef __IRadialDimension3D_FWD_DEFINED__
#define __IRadialDimension3D_FWD_DEFINED__
typedef interface IRadialDimension3D IRadialDimension3D;
#endif 	/* __IRadialDimension3D_FWD_DEFINED__ */


#ifndef __IDiametralDimension3D_FWD_DEFINED__
#define __IDiametralDimension3D_FWD_DEFINED__
typedef interface IDiametralDimension3D IDiametralDimension3D;
#endif 	/* __IDiametralDimension3D_FWD_DEFINED__ */


#ifndef __IRadialDimensions3D_FWD_DEFINED__
#define __IRadialDimensions3D_FWD_DEFINED__
typedef interface IRadialDimensions3D IRadialDimensions3D;
#endif 	/* __IRadialDimensions3D_FWD_DEFINED__ */


#ifndef __IDiametralDimensions3D_FWD_DEFINED__
#define __IDiametralDimensions3D_FWD_DEFINED__
typedef interface IDiametralDimensions3D IDiametralDimensions3D;
#endif 	/* __IDiametralDimensions3D_FWD_DEFINED__ */


#ifndef __IAngleDimension3D_FWD_DEFINED__
#define __IAngleDimension3D_FWD_DEFINED__
typedef interface IAngleDimension3D IAngleDimension3D;
#endif 	/* __IAngleDimension3D_FWD_DEFINED__ */


#ifndef __IAngleDimensions3D_FWD_DEFINED__
#define __IAngleDimensions3D_FWD_DEFINED__
typedef interface IAngleDimensions3D IAngleDimensions3D;
#endif 	/* __IAngleDimensions3D_FWD_DEFINED__ */


#ifndef __ICurveVertexParam_FWD_DEFINED__
#define __ICurveVertexParam_FWD_DEFINED__
typedef interface ICurveVertexParam ICurveVertexParam;
#endif 	/* __ICurveVertexParam_FWD_DEFINED__ */


#ifndef __ISplines3D_FWD_DEFINED__
#define __ISplines3D_FWD_DEFINED__
typedef interface ISplines3D ISplines3D;
#endif 	/* __ISplines3D_FWD_DEFINED__ */


#ifndef __ISpline3D_FWD_DEFINED__
#define __ISpline3D_FWD_DEFINED__
typedef interface ISpline3D ISpline3D;
#endif 	/* __ISpline3D_FWD_DEFINED__ */


#ifndef __ILocalCoordinateSystem_FWD_DEFINED__
#define __ILocalCoordinateSystem_FWD_DEFINED__
typedef interface ILocalCoordinateSystem ILocalCoordinateSystem;
#endif 	/* __ILocalCoordinateSystem_FWD_DEFINED__ */


#ifndef __ILocalCoordinateSystems_FWD_DEFINED__
#define __ILocalCoordinateSystems_FWD_DEFINED__
typedef interface ILocalCoordinateSystems ILocalCoordinateSystems;
#endif 	/* __ILocalCoordinateSystems_FWD_DEFINED__ */


#ifndef __IAuxiliaryGeomContainer_FWD_DEFINED__
#define __IAuxiliaryGeomContainer_FWD_DEFINED__
typedef interface IAuxiliaryGeomContainer IAuxiliaryGeomContainer;
#endif 	/* __IAuxiliaryGeomContainer_FWD_DEFINED__ */


#ifndef __ILocalCSAxesDirectionParam_FWD_DEFINED__
#define __ILocalCSAxesDirectionParam_FWD_DEFINED__
typedef interface ILocalCSAxesDirectionParam ILocalCSAxesDirectionParam;
#endif 	/* __ILocalCSAxesDirectionParam_FWD_DEFINED__ */


#ifndef __ILocalCSEulerParam_FWD_DEFINED__
#define __ILocalCSEulerParam_FWD_DEFINED__
typedef interface ILocalCSEulerParam ILocalCSEulerParam;
#endif 	/* __ILocalCSEulerParam_FWD_DEFINED__ */


#ifndef __IPolyLine_FWD_DEFINED__
#define __IPolyLine_FWD_DEFINED__
typedef interface IPolyLine IPolyLine;
#endif 	/* __IPolyLine_FWD_DEFINED__ */


#ifndef __IPolyLines_FWD_DEFINED__
#define __IPolyLines_FWD_DEFINED__
typedef interface IPolyLines IPolyLines;
#endif 	/* __IPolyLines_FWD_DEFINED__ */


#ifndef __IRoughParams_FWD_DEFINED__
#define __IRoughParams_FWD_DEFINED__
typedef interface IRoughParams IRoughParams;
#endif 	/* __IRoughParams_FWD_DEFINED__ */


#ifndef __IBranchs3D_FWD_DEFINED__
#define __IBranchs3D_FWD_DEFINED__
typedef interface IBranchs3D IBranchs3D;
#endif 	/* __IBranchs3D_FWD_DEFINED__ */


#ifndef __IBaseLeader3D_FWD_DEFINED__
#define __IBaseLeader3D_FWD_DEFINED__
typedef interface IBaseLeader3D IBaseLeader3D;
#endif 	/* __IBaseLeader3D_FWD_DEFINED__ */


#ifndef __ILeaders3D_FWD_DEFINED__
#define __ILeaders3D_FWD_DEFINED__
typedef interface ILeaders3D ILeaders3D;
#endif 	/* __ILeaders3D_FWD_DEFINED__ */


#ifndef __IRough3D_FWD_DEFINED__
#define __IRough3D_FWD_DEFINED__
typedef interface IRough3D IRough3D;
#endif 	/* __IRough3D_FWD_DEFINED__ */


#ifndef __IRoughs3D_FWD_DEFINED__
#define __IRoughs3D_FWD_DEFINED__
typedef interface IRoughs3D IRoughs3D;
#endif 	/* __IRoughs3D_FWD_DEFINED__ */


#ifndef __IBases3D_FWD_DEFINED__
#define __IBases3D_FWD_DEFINED__
typedef interface IBases3D IBases3D;
#endif 	/* __IBases3D_FWD_DEFINED__ */


#ifndef __IBase3D_FWD_DEFINED__
#define __IBase3D_FWD_DEFINED__
typedef interface IBase3D IBase3D;
#endif 	/* __IBase3D_FWD_DEFINED__ */


#ifndef __ITolerances3D_FWD_DEFINED__
#define __ITolerances3D_FWD_DEFINED__
typedef interface ITolerances3D ITolerances3D;
#endif 	/* __ITolerances3D_FWD_DEFINED__ */


#ifndef __ITolerance3D_FWD_DEFINED__
#define __ITolerance3D_FWD_DEFINED__
typedef interface ITolerance3D ITolerance3D;
#endif 	/* __ITolerance3D_FWD_DEFINED__ */


#ifndef __ILocalCSOrientByObjectParam_FWD_DEFINED__
#define __ILocalCSOrientByObjectParam_FWD_DEFINED__
typedef interface ILocalCSOrientByObjectParam ILocalCSOrientByObjectParam;
#endif 	/* __ILocalCSOrientByObjectParam_FWD_DEFINED__ */


#ifndef __IControlPoints_FWD_DEFINED__
#define __IControlPoints_FWD_DEFINED__
typedef interface IControlPoints IControlPoints;
#endif 	/* __IControlPoints_FWD_DEFINED__ */


#ifndef __IControlPoint_FWD_DEFINED__
#define __IControlPoint_FWD_DEFINED__
typedef interface IControlPoint IControlPoint;
#endif 	/* __IControlPoint_FWD_DEFINED__ */


#ifndef __IConjunctivePoints_FWD_DEFINED__
#define __IConjunctivePoints_FWD_DEFINED__
typedef interface IConjunctivePoints IConjunctivePoints;
#endif 	/* __IConjunctivePoints_FWD_DEFINED__ */


#ifndef __IConjunctivePoint_FWD_DEFINED__
#define __IConjunctivePoint_FWD_DEFINED__
typedef interface IConjunctivePoint IConjunctivePoint;
#endif 	/* __IConjunctivePoint_FWD_DEFINED__ */


#ifndef __ILocalCSObject_FWD_DEFINED__
#define __ILocalCSObject_FWD_DEFINED__
typedef interface ILocalCSObject ILocalCSObject;
#endif 	/* __ILocalCSObject_FWD_DEFINED__ */


#ifndef __ISplitLines_FWD_DEFINED__
#define __ISplitLines_FWD_DEFINED__
typedef interface ISplitLines ISplitLines;
#endif 	/* __ISplitLines_FWD_DEFINED__ */


#ifndef __ISplitLine_FWD_DEFINED__
#define __ISplitLine_FWD_DEFINED__
typedef interface ISplitLine ISplitLine;
#endif 	/* __ISplitLine_FWD_DEFINED__ */


#ifndef __ISurfaceContainer_FWD_DEFINED__
#define __ISurfaceContainer_FWD_DEFINED__
typedef interface ISurfaceContainer ISurfaceContainer;
#endif 	/* __ISurfaceContainer_FWD_DEFINED__ */


#ifndef __ISurfacePatches_FWD_DEFINED__
#define __ISurfacePatches_FWD_DEFINED__
typedef interface ISurfacePatches ISurfacePatches;
#endif 	/* __ISurfacePatches_FWD_DEFINED__ */


#ifndef __ISurfacePatch_FWD_DEFINED__
#define __ISurfacePatch_FWD_DEFINED__
typedef interface ISurfacePatch ISurfacePatch;
#endif 	/* __ISurfacePatch_FWD_DEFINED__ */


#ifndef __IFaceRemovers_FWD_DEFINED__
#define __IFaceRemovers_FWD_DEFINED__
typedef interface IFaceRemovers IFaceRemovers;
#endif 	/* __IFaceRemovers_FWD_DEFINED__ */


#ifndef __IFaceRemover_FWD_DEFINED__
#define __IFaceRemover_FWD_DEFINED__
typedef interface IFaceRemover IFaceRemover;
#endif 	/* __IFaceRemover_FWD_DEFINED__ */


#ifndef __ISurfaceSewers_FWD_DEFINED__
#define __ISurfaceSewers_FWD_DEFINED__
typedef interface ISurfaceSewers ISurfaceSewers;
#endif 	/* __ISurfaceSewers_FWD_DEFINED__ */


#ifndef __ISurfaceSewer_FWD_DEFINED__
#define __ISurfaceSewer_FWD_DEFINED__
typedef interface ISurfaceSewer ISurfaceSewer;
#endif 	/* __ISurfaceSewer_FWD_DEFINED__ */


#ifndef __INurbsSurfaces_FWD_DEFINED__
#define __INurbsSurfaces_FWD_DEFINED__
typedef interface INurbsSurfaces INurbsSurfaces;
#endif 	/* __INurbsSurfaces_FWD_DEFINED__ */


#ifndef __INurbsSurface_FWD_DEFINED__
#define __INurbsSurface_FWD_DEFINED__
typedef interface INurbsSurface INurbsSurface;
#endif 	/* __INurbsSurface_FWD_DEFINED__ */


#ifndef __IColorParam7_FWD_DEFINED__
#define __IColorParam7_FWD_DEFINED__
typedef interface IColorParam7 IColorParam7;
#endif 	/* __IColorParam7_FWD_DEFINED__ */


#ifndef __ISurfacesIntersectionCurve_FWD_DEFINED__
#define __ISurfacesIntersectionCurve_FWD_DEFINED__
typedef interface ISurfacesIntersectionCurve ISurfacesIntersectionCurve;
#endif 	/* __ISurfacesIntersectionCurve_FWD_DEFINED__ */


#ifndef __ISurfacesIntersectionCurves_FWD_DEFINED__
#define __ISurfacesIntersectionCurves_FWD_DEFINED__
typedef interface ISurfacesIntersectionCurves ISurfacesIntersectionCurves;
#endif 	/* __ISurfacesIntersectionCurves_FWD_DEFINED__ */


#ifndef __IEquidistants3D_FWD_DEFINED__
#define __IEquidistants3D_FWD_DEFINED__
typedef interface IEquidistants3D IEquidistants3D;
#endif 	/* __IEquidistants3D_FWD_DEFINED__ */


#ifndef __IEquidistant3D_FWD_DEFINED__
#define __IEquidistant3D_FWD_DEFINED__
typedef interface IEquidistant3D IEquidistant3D;
#endif 	/* __IEquidistant3D_FWD_DEFINED__ */


#ifndef __IDrawingText_FWD_DEFINED__
#define __IDrawingText_FWD_DEFINED__
typedef interface IDrawingText IDrawingText;
#endif 	/* __IDrawingText_FWD_DEFINED__ */


#ifndef __IDrawingTexts_FWD_DEFINED__
#define __IDrawingTexts_FWD_DEFINED__
typedef interface IDrawingTexts IDrawingTexts;
#endif 	/* __IDrawingTexts_FWD_DEFINED__ */


#ifndef __IDrawingContainer_FWD_DEFINED__
#define __IDrawingContainer_FWD_DEFINED__
typedef interface IDrawingContainer IDrawingContainer;
#endif 	/* __IDrawingContainer_FWD_DEFINED__ */


#ifndef __IMark_FWD_DEFINED__
#define __IMark_FWD_DEFINED__
typedef interface IMark IMark;
#endif 	/* __IMark_FWD_DEFINED__ */


#ifndef __IMarks_FWD_DEFINED__
#define __IMarks_FWD_DEFINED__
typedef interface IMarks IMarks;
#endif 	/* __IMarks_FWD_DEFINED__ */


#ifndef __IMarkInsideForm_FWD_DEFINED__
#define __IMarkInsideForm_FWD_DEFINED__
typedef interface IMarkInsideForm IMarkInsideForm;
#endif 	/* __IMarkInsideForm_FWD_DEFINED__ */


#ifndef __IMarkOnLine_FWD_DEFINED__
#define __IMarkOnLine_FWD_DEFINED__
typedef interface IMarkOnLine IMarkOnLine;
#endif 	/* __IMarkOnLine_FWD_DEFINED__ */


#ifndef __IMarkOnLeader_FWD_DEFINED__
#define __IMarkOnLeader_FWD_DEFINED__
typedef interface IMarkOnLeader IMarkOnLeader;
#endif 	/* __IMarkOnLeader_FWD_DEFINED__ */


#ifndef __IBuildingAxis_FWD_DEFINED__
#define __IBuildingAxis_FWD_DEFINED__
typedef interface IBuildingAxis IBuildingAxis;
#endif 	/* __IBuildingAxis_FWD_DEFINED__ */


#ifndef __IBuildingAxes_FWD_DEFINED__
#define __IBuildingAxes_FWD_DEFINED__
typedef interface IBuildingAxes IBuildingAxes;
#endif 	/* __IBuildingAxes_FWD_DEFINED__ */


#ifndef __IStraightAxis_FWD_DEFINED__
#define __IStraightAxis_FWD_DEFINED__
typedef interface IStraightAxis IStraightAxis;
#endif 	/* __IStraightAxis_FWD_DEFINED__ */


#ifndef __IArcAxis_FWD_DEFINED__
#define __IArcAxis_FWD_DEFINED__
typedef interface IArcAxis IArcAxis;
#endif 	/* __IArcAxis_FWD_DEFINED__ */


#ifndef __ICircleAxis_FWD_DEFINED__
#define __ICircleAxis_FWD_DEFINED__
typedef interface ICircleAxis ICircleAxis;
#endif 	/* __ICircleAxis_FWD_DEFINED__ */


#ifndef __IAxisJut_FWD_DEFINED__
#define __IAxisJut_FWD_DEFINED__
typedef interface IAxisJut IAxisJut;
#endif 	/* __IAxisJut_FWD_DEFINED__ */


#ifndef __IMarkNode_FWD_DEFINED__
#define __IMarkNode_FWD_DEFINED__
typedef interface IMarkNode IMarkNode;
#endif 	/* __IMarkNode_FWD_DEFINED__ */


#ifndef __IMarkNodes_FWD_DEFINED__
#define __IMarkNodes_FWD_DEFINED__
typedef interface IMarkNodes IMarkNodes;
#endif 	/* __IMarkNodes_FWD_DEFINED__ */


#ifndef __ILineSegments_FWD_DEFINED__
#define __ILineSegments_FWD_DEFINED__
typedef interface ILineSegments ILineSegments;
#endif 	/* __ILineSegments_FWD_DEFINED__ */


#ifndef __ILineSegment_FWD_DEFINED__
#define __ILineSegment_FWD_DEFINED__
typedef interface ILineSegment ILineSegment;
#endif 	/* __ILineSegment_FWD_DEFINED__ */


#ifndef __ICutUnitMarking_FWD_DEFINED__
#define __ICutUnitMarking_FWD_DEFINED__
typedef interface ICutUnitMarking ICutUnitMarking;
#endif 	/* __ICutUnitMarking_FWD_DEFINED__ */


#ifndef __ICutUnitMarkings_FWD_DEFINED__
#define __ICutUnitMarkings_FWD_DEFINED__
typedef interface ICutUnitMarkings ICutUnitMarkings;
#endif 	/* __ICutUnitMarkings_FWD_DEFINED__ */


#ifndef __IUnitMarking_FWD_DEFINED__
#define __IUnitMarking_FWD_DEFINED__
typedef interface IUnitMarking IUnitMarking;
#endif 	/* __IUnitMarking_FWD_DEFINED__ */


#ifndef __IUnitMarkings_FWD_DEFINED__
#define __IUnitMarkings_FWD_DEFINED__
typedef interface IUnitMarkings IUnitMarkings;
#endif 	/* __IUnitMarkings_FWD_DEFINED__ */


#ifndef __IBuildingContainer_FWD_DEFINED__
#define __IBuildingContainer_FWD_DEFINED__
typedef interface IBuildingContainer IBuildingContainer;
#endif 	/* __IBuildingContainer_FWD_DEFINED__ */


#ifndef __IArcs_FWD_DEFINED__
#define __IArcs_FWD_DEFINED__
typedef interface IArcs IArcs;
#endif 	/* __IArcs_FWD_DEFINED__ */


#ifndef __IArc_FWD_DEFINED__
#define __IArc_FWD_DEFINED__
typedef interface IArc IArc;
#endif 	/* __IArc_FWD_DEFINED__ */


#ifndef __IMultiTextLeader_FWD_DEFINED__
#define __IMultiTextLeader_FWD_DEFINED__
typedef interface IMultiTextLeader IMultiTextLeader;
#endif 	/* __IMultiTextLeader_FWD_DEFINED__ */


#ifndef __IMultiTextLeaders_FWD_DEFINED__
#define __IMultiTextLeaders_FWD_DEFINED__
typedef interface IMultiTextLeaders IMultiTextLeaders;
#endif 	/* __IMultiTextLeaders_FWD_DEFINED__ */


#ifndef __IBrace_FWD_DEFINED__
#define __IBrace_FWD_DEFINED__
typedef interface IBrace IBrace;
#endif 	/* __IBrace_FWD_DEFINED__ */


#ifndef __IBraces_FWD_DEFINED__
#define __IBraces_FWD_DEFINED__
typedef interface IBraces IBraces;
#endif 	/* __IBraces_FWD_DEFINED__ */


#ifndef __IUnitNumber_FWD_DEFINED__
#define __IUnitNumber_FWD_DEFINED__
typedef interface IUnitNumber IUnitNumber;
#endif 	/* __IUnitNumber_FWD_DEFINED__ */


#ifndef __IUnitNumbers_FWD_DEFINED__
#define __IUnitNumbers_FWD_DEFINED__
typedef interface IUnitNumbers IUnitNumbers;
#endif 	/* __IUnitNumbers_FWD_DEFINED__ */


#ifndef __ISymbols2DContainer_FWD_DEFINED__
#define __ISymbols2DContainer_FWD_DEFINED__
typedef interface ISymbols2DContainer ISymbols2DContainer;
#endif 	/* __ISymbols2DContainer_FWD_DEFINED__ */


#ifndef __IRadialDimension_FWD_DEFINED__
#define __IRadialDimension_FWD_DEFINED__
typedef interface IRadialDimension IRadialDimension;
#endif 	/* __IRadialDimension_FWD_DEFINED__ */


#ifndef __IRadialDimensions_FWD_DEFINED__
#define __IRadialDimensions_FWD_DEFINED__
typedef interface IRadialDimensions IRadialDimensions;
#endif 	/* __IRadialDimensions_FWD_DEFINED__ */


#ifndef __IBreakRadialDimension_FWD_DEFINED__
#define __IBreakRadialDimension_FWD_DEFINED__
typedef interface IBreakRadialDimension IBreakRadialDimension;
#endif 	/* __IBreakRadialDimension_FWD_DEFINED__ */


#ifndef __IBreakRadialDimensions_FWD_DEFINED__
#define __IBreakRadialDimensions_FWD_DEFINED__
typedef interface IBreakRadialDimensions IBreakRadialDimensions;
#endif 	/* __IBreakRadialDimensions_FWD_DEFINED__ */


#ifndef __IDiametralDimension_FWD_DEFINED__
#define __IDiametralDimension_FWD_DEFINED__
typedef interface IDiametralDimension IDiametralDimension;
#endif 	/* __IDiametralDimension_FWD_DEFINED__ */


#ifndef __IDiametralDimensions_FWD_DEFINED__
#define __IDiametralDimensions_FWD_DEFINED__
typedef interface IDiametralDimensions IDiametralDimensions;
#endif 	/* __IDiametralDimensions_FWD_DEFINED__ */


#ifndef __ILineDimension_FWD_DEFINED__
#define __ILineDimension_FWD_DEFINED__
typedef interface ILineDimension ILineDimension;
#endif 	/* __ILineDimension_FWD_DEFINED__ */


#ifndef __ILineDimensions_FWD_DEFINED__
#define __ILineDimensions_FWD_DEFINED__
typedef interface ILineDimensions ILineDimensions;
#endif 	/* __ILineDimensions_FWD_DEFINED__ */


#ifndef __IBreakLineDimension_FWD_DEFINED__
#define __IBreakLineDimension_FWD_DEFINED__
typedef interface IBreakLineDimension IBreakLineDimension;
#endif 	/* __IBreakLineDimension_FWD_DEFINED__ */


#ifndef __IBreakLineDimensions_FWD_DEFINED__
#define __IBreakLineDimensions_FWD_DEFINED__
typedef interface IBreakLineDimensions IBreakLineDimensions;
#endif 	/* __IBreakLineDimensions_FWD_DEFINED__ */


#ifndef __IHeightDimension_FWD_DEFINED__
#define __IHeightDimension_FWD_DEFINED__
typedef interface IHeightDimension IHeightDimension;
#endif 	/* __IHeightDimension_FWD_DEFINED__ */


#ifndef __IHeightDimensions_FWD_DEFINED__
#define __IHeightDimensions_FWD_DEFINED__
typedef interface IHeightDimensions IHeightDimensions;
#endif 	/* __IHeightDimensions_FWD_DEFINED__ */


#ifndef __IAngleDimension_FWD_DEFINED__
#define __IAngleDimension_FWD_DEFINED__
typedef interface IAngleDimension IAngleDimension;
#endif 	/* __IAngleDimension_FWD_DEFINED__ */


#ifndef __IAngleDimensions_FWD_DEFINED__
#define __IAngleDimensions_FWD_DEFINED__
typedef interface IAngleDimensions IAngleDimensions;
#endif 	/* __IAngleDimensions_FWD_DEFINED__ */


#ifndef __IBreakAngleDimension_FWD_DEFINED__
#define __IBreakAngleDimension_FWD_DEFINED__
typedef interface IBreakAngleDimension IBreakAngleDimension;
#endif 	/* __IBreakAngleDimension_FWD_DEFINED__ */


#ifndef __IArcDimension_FWD_DEFINED__
#define __IArcDimension_FWD_DEFINED__
typedef interface IArcDimension IArcDimension;
#endif 	/* __IArcDimension_FWD_DEFINED__ */


#ifndef __IArcDimensions_FWD_DEFINED__
#define __IArcDimensions_FWD_DEFINED__
typedef interface IArcDimensions IArcDimensions;
#endif 	/* __IArcDimensions_FWD_DEFINED__ */


#ifndef __IBranchs_FWD_DEFINED__
#define __IBranchs_FWD_DEFINED__
typedef interface IBranchs IBranchs;
#endif 	/* __IBranchs_FWD_DEFINED__ */


#ifndef __IBaseLeader_FWD_DEFINED__
#define __IBaseLeader_FWD_DEFINED__
typedef interface IBaseLeader IBaseLeader;
#endif 	/* __IBaseLeader_FWD_DEFINED__ */


#ifndef __ILeader_FWD_DEFINED__
#define __ILeader_FWD_DEFINED__
typedef interface ILeader ILeader;
#endif 	/* __ILeader_FWD_DEFINED__ */


#ifndef __ILeaders_FWD_DEFINED__
#define __ILeaders_FWD_DEFINED__
typedef interface ILeaders ILeaders;
#endif 	/* __ILeaders_FWD_DEFINED__ */


#ifndef __IRoughs_FWD_DEFINED__
#define __IRoughs_FWD_DEFINED__
typedef interface IRoughs IRoughs;
#endif 	/* __IRoughs_FWD_DEFINED__ */


#ifndef __IRough_FWD_DEFINED__
#define __IRough_FWD_DEFINED__
typedef interface IRough IRough;
#endif 	/* __IRough_FWD_DEFINED__ */


#ifndef __IMarkLeader_FWD_DEFINED__
#define __IMarkLeader_FWD_DEFINED__
typedef interface IMarkLeader IMarkLeader;
#endif 	/* __IMarkLeader_FWD_DEFINED__ */


#ifndef __IPositionLeader_FWD_DEFINED__
#define __IPositionLeader_FWD_DEFINED__
typedef interface IPositionLeader IPositionLeader;
#endif 	/* __IPositionLeader_FWD_DEFINED__ */


#ifndef __IChangeLeader_FWD_DEFINED__
#define __IChangeLeader_FWD_DEFINED__
typedef interface IChangeLeader IChangeLeader;
#endif 	/* __IChangeLeader_FWD_DEFINED__ */


#ifndef __IBase_FWD_DEFINED__
#define __IBase_FWD_DEFINED__
typedef interface IBase IBase;
#endif 	/* __IBase_FWD_DEFINED__ */


#ifndef __IBases_FWD_DEFINED__
#define __IBases_FWD_DEFINED__
typedef interface IBases IBases;
#endif 	/* __IBases_FWD_DEFINED__ */


#ifndef __IBrandLeader_FWD_DEFINED__
#define __IBrandLeader_FWD_DEFINED__
typedef interface IBrandLeader IBrandLeader;
#endif 	/* __IBrandLeader_FWD_DEFINED__ */


#ifndef __IDrawingTable_FWD_DEFINED__
#define __IDrawingTable_FWD_DEFINED__
typedef interface IDrawingTable IDrawingTable;
#endif 	/* __IDrawingTable_FWD_DEFINED__ */


#ifndef __IDrawingTables_FWD_DEFINED__
#define __IDrawingTables_FWD_DEFINED__
typedef interface IDrawingTables IDrawingTables;
#endif 	/* __IDrawingTables_FWD_DEFINED__ */


#ifndef __ITolerances_FWD_DEFINED__
#define __ITolerances_FWD_DEFINED__
typedef interface ITolerances ITolerances;
#endif 	/* __ITolerances_FWD_DEFINED__ */


#ifndef __ITolerance_FWD_DEFINED__
#define __ITolerance_FWD_DEFINED__
typedef interface ITolerance ITolerance;
#endif 	/* __ITolerance_FWD_DEFINED__ */


#ifndef __IToleranceParam_FWD_DEFINED__
#define __IToleranceParam_FWD_DEFINED__
typedef interface IToleranceParam IToleranceParam;
#endif 	/* __IToleranceParam_FWD_DEFINED__ */


#ifndef __ICutLine_FWD_DEFINED__
#define __ICutLine_FWD_DEFINED__
typedef interface ICutLine ICutLine;
#endif 	/* __ICutLine_FWD_DEFINED__ */


#ifndef __ICutLines_FWD_DEFINED__
#define __ICutLines_FWD_DEFINED__
typedef interface ICutLines ICutLines;
#endif 	/* __ICutLines_FWD_DEFINED__ */


#ifndef __IViewPointer_FWD_DEFINED__
#define __IViewPointer_FWD_DEFINED__
typedef interface IViewPointer IViewPointer;
#endif 	/* __IViewPointer_FWD_DEFINED__ */


#ifndef __IViewPointers_FWD_DEFINED__
#define __IViewPointers_FWD_DEFINED__
typedef interface IViewPointers IViewPointers;
#endif 	/* __IViewPointers_FWD_DEFINED__ */


#ifndef __IMultiline_FWD_DEFINED__
#define __IMultiline_FWD_DEFINED__
typedef interface IMultiline IMultiline;
#endif 	/* __IMultiline_FWD_DEFINED__ */


#ifndef __IMultilines_FWD_DEFINED__
#define __IMultilines_FWD_DEFINED__
typedef interface IMultilines IMultilines;
#endif 	/* __IMultilines_FWD_DEFINED__ */


#ifndef __IContourSegment_FWD_DEFINED__
#define __IContourSegment_FWD_DEFINED__
typedef interface IContourSegment IContourSegment;
#endif 	/* __IContourSegment_FWD_DEFINED__ */


#ifndef __IContour_FWD_DEFINED__
#define __IContour_FWD_DEFINED__
typedef interface IContour IContour;
#endif 	/* __IContour_FWD_DEFINED__ */


#ifndef __IContourLineSegment_FWD_DEFINED__
#define __IContourLineSegment_FWD_DEFINED__
typedef interface IContourLineSegment IContourLineSegment;
#endif 	/* __IContourLineSegment_FWD_DEFINED__ */


#ifndef __IContourArc_FWD_DEFINED__
#define __IContourArc_FWD_DEFINED__
typedef interface IContourArc IContourArc;
#endif 	/* __IContourArc_FWD_DEFINED__ */


#ifndef __ICurve2D_FWD_DEFINED__
#define __ICurve2D_FWD_DEFINED__
typedef interface ICurve2D ICurve2D;
#endif 	/* __ICurve2D_FWD_DEFINED__ */


#ifndef __IDrawingContours_FWD_DEFINED__
#define __IDrawingContours_FWD_DEFINED__
typedef interface IDrawingContours IDrawingContours;
#endif 	/* __IDrawingContours_FWD_DEFINED__ */


#ifndef __IDrawingContour_FWD_DEFINED__
#define __IDrawingContour_FWD_DEFINED__
typedef interface IDrawingContour IDrawingContour;
#endif 	/* __IDrawingContour_FWD_DEFINED__ */


#ifndef __ICircles_FWD_DEFINED__
#define __ICircles_FWD_DEFINED__
typedef interface ICircles ICircles;
#endif 	/* __ICircles_FWD_DEFINED__ */


#ifndef __ICircle_FWD_DEFINED__
#define __ICircle_FWD_DEFINED__
typedef interface ICircle ICircle;
#endif 	/* __ICircle_FWD_DEFINED__ */


#ifndef __IMacroObjects_FWD_DEFINED__
#define __IMacroObjects_FWD_DEFINED__
typedef interface IMacroObjects IMacroObjects;
#endif 	/* __IMacroObjects_FWD_DEFINED__ */


#ifndef __IMacroObject_FWD_DEFINED__
#define __IMacroObject_FWD_DEFINED__
typedef interface IMacroObject IMacroObject;
#endif 	/* __IMacroObject_FWD_DEFINED__ */


#ifndef __IEllipses_FWD_DEFINED__
#define __IEllipses_FWD_DEFINED__
typedef interface IEllipses IEllipses;
#endif 	/* __IEllipses_FWD_DEFINED__ */


#ifndef __IEllipse_FWD_DEFINED__
#define __IEllipse_FWD_DEFINED__
typedef interface IEllipse IEllipse;
#endif 	/* __IEllipse_FWD_DEFINED__ */


#ifndef __IEllipseArcs_FWD_DEFINED__
#define __IEllipseArcs_FWD_DEFINED__
typedef interface IEllipseArcs IEllipseArcs;
#endif 	/* __IEllipseArcs_FWD_DEFINED__ */


#ifndef __IEllipseArc_FWD_DEFINED__
#define __IEllipseArc_FWD_DEFINED__
typedef interface IEllipseArc IEllipseArc;
#endif 	/* __IEllipseArc_FWD_DEFINED__ */


#ifndef __IPoint_FWD_DEFINED__
#define __IPoint_FWD_DEFINED__
typedef interface IPoint IPoint;
#endif 	/* __IPoint_FWD_DEFINED__ */


#ifndef __IPoints_FWD_DEFINED__
#define __IPoints_FWD_DEFINED__
typedef interface IPoints IPoints;
#endif 	/* __IPoints_FWD_DEFINED__ */


#ifndef __ILine_FWD_DEFINED__
#define __ILine_FWD_DEFINED__
typedef interface ILine ILine;
#endif 	/* __ILine_FWD_DEFINED__ */


#ifndef __ILines_FWD_DEFINED__
#define __ILines_FWD_DEFINED__
typedef interface ILines ILines;
#endif 	/* __ILines_FWD_DEFINED__ */


#ifndef __IBezier_FWD_DEFINED__
#define __IBezier_FWD_DEFINED__
typedef interface IBezier IBezier;
#endif 	/* __IBezier_FWD_DEFINED__ */


#ifndef __IBeziers_FWD_DEFINED__
#define __IBeziers_FWD_DEFINED__
typedef interface IBeziers IBeziers;
#endif 	/* __IBeziers_FWD_DEFINED__ */


#ifndef __IRectangles_FWD_DEFINED__
#define __IRectangles_FWD_DEFINED__
typedef interface IRectangles IRectangles;
#endif 	/* __IRectangles_FWD_DEFINED__ */


#ifndef __IRectangle_FWD_DEFINED__
#define __IRectangle_FWD_DEFINED__
typedef interface IRectangle IRectangle;
#endif 	/* __IRectangle_FWD_DEFINED__ */


#ifndef __IRegularPolygons_FWD_DEFINED__
#define __IRegularPolygons_FWD_DEFINED__
typedef interface IRegularPolygons IRegularPolygons;
#endif 	/* __IRegularPolygons_FWD_DEFINED__ */


#ifndef __IRegularPolygon_FWD_DEFINED__
#define __IRegularPolygon_FWD_DEFINED__
typedef interface IRegularPolygon IRegularPolygon;
#endif 	/* __IRegularPolygon_FWD_DEFINED__ */


#ifndef __IInsertionObject_FWD_DEFINED__
#define __IInsertionObject_FWD_DEFINED__
typedef interface IInsertionObject IInsertionObject;
#endif 	/* __IInsertionObject_FWD_DEFINED__ */


#ifndef __IInsertionObjects_FWD_DEFINED__
#define __IInsertionObjects_FWD_DEFINED__
typedef interface IInsertionObjects IInsertionObjects;
#endif 	/* __IInsertionObjects_FWD_DEFINED__ */


#ifndef __IInsertionFragment_FWD_DEFINED__
#define __IInsertionFragment_FWD_DEFINED__
typedef interface IInsertionFragment IInsertionFragment;
#endif 	/* __IInsertionFragment_FWD_DEFINED__ */


#ifndef __IInsertionView_FWD_DEFINED__
#define __IInsertionView_FWD_DEFINED__
typedef interface IInsertionView IInsertionView;
#endif 	/* __IInsertionView_FWD_DEFINED__ */


#ifndef __IInsertionDefinition_FWD_DEFINED__
#define __IInsertionDefinition_FWD_DEFINED__
typedef interface IInsertionDefinition IInsertionDefinition;
#endif 	/* __IInsertionDefinition_FWD_DEFINED__ */


#ifndef __IInsertionsManager_FWD_DEFINED__
#define __IInsertionsManager_FWD_DEFINED__
typedef interface IInsertionsManager IInsertionsManager;
#endif 	/* __IInsertionsManager_FWD_DEFINED__ */


#ifndef __IPolyLine2D_FWD_DEFINED__
#define __IPolyLine2D_FWD_DEFINED__
typedef interface IPolyLine2D IPolyLine2D;
#endif 	/* __IPolyLine2D_FWD_DEFINED__ */


#ifndef __IPolyLines2D_FWD_DEFINED__
#define __IPolyLines2D_FWD_DEFINED__
typedef interface IPolyLines2D IPolyLines2D;
#endif 	/* __IPolyLines2D_FWD_DEFINED__ */


#ifndef __IEquidistants_FWD_DEFINED__
#define __IEquidistants_FWD_DEFINED__
typedef interface IEquidistants IEquidistants;
#endif 	/* __IEquidistants_FWD_DEFINED__ */


#ifndef __IEquidistant_FWD_DEFINED__
#define __IEquidistant_FWD_DEFINED__
typedef interface IEquidistant IEquidistant;
#endif 	/* __IEquidistant_FWD_DEFINED__ */


#ifndef __INurbs_FWD_DEFINED__
#define __INurbs_FWD_DEFINED__
typedef interface INurbs INurbs;
#endif 	/* __INurbs_FWD_DEFINED__ */


#ifndef __INurbses_FWD_DEFINED__
#define __INurbses_FWD_DEFINED__
typedef interface INurbses INurbses;
#endif 	/* __INurbses_FWD_DEFINED__ */


#ifndef __ICentreMarkers_FWD_DEFINED__
#define __ICentreMarkers_FWD_DEFINED__
typedef interface ICentreMarkers ICentreMarkers;
#endif 	/* __ICentreMarkers_FWD_DEFINED__ */


#ifndef __ICentreMarker_FWD_DEFINED__
#define __ICentreMarker_FWD_DEFINED__
typedef interface ICentreMarker ICentreMarker;
#endif 	/* __ICentreMarker_FWD_DEFINED__ */


#ifndef __IAxisLineParam_FWD_DEFINED__
#define __IAxisLineParam_FWD_DEFINED__
typedef interface IAxisLineParam IAxisLineParam;
#endif 	/* __IAxisLineParam_FWD_DEFINED__ */


#ifndef __IRemoteElement_FWD_DEFINED__
#define __IRemoteElement_FWD_DEFINED__
typedef interface IRemoteElement IRemoteElement;
#endif 	/* __IRemoteElement_FWD_DEFINED__ */


#ifndef __IRemoteElements_FWD_DEFINED__
#define __IRemoteElements_FWD_DEFINED__
typedef interface IRemoteElements IRemoteElements;
#endif 	/* __IRemoteElements_FWD_DEFINED__ */


#ifndef __IAxisLine_FWD_DEFINED__
#define __IAxisLine_FWD_DEFINED__
typedef interface IAxisLine IAxisLine;
#endif 	/* __IAxisLine_FWD_DEFINED__ */


#ifndef __IAxisLines_FWD_DEFINED__
#define __IAxisLines_FWD_DEFINED__
typedef interface IAxisLines IAxisLines;
#endif 	/* __IAxisLines_FWD_DEFINED__ */


#ifndef __IHatchParam_FWD_DEFINED__
#define __IHatchParam_FWD_DEFINED__
typedef interface IHatchParam IHatchParam;
#endif 	/* __IHatchParam_FWD_DEFINED__ */


#ifndef __IDrawingGroup_FWD_DEFINED__
#define __IDrawingGroup_FWD_DEFINED__
typedef interface IDrawingGroup IDrawingGroup;
#endif 	/* __IDrawingGroup_FWD_DEFINED__ */


#ifndef __IDrawingGroups_FWD_DEFINED__
#define __IDrawingGroups_FWD_DEFINED__
typedef interface IDrawingGroups IDrawingGroups;
#endif 	/* __IDrawingGroups_FWD_DEFINED__ */


#ifndef __IBoundariesObject_FWD_DEFINED__
#define __IBoundariesObject_FWD_DEFINED__
typedef interface IBoundariesObject IBoundariesObject;
#endif 	/* __IBoundariesObject_FWD_DEFINED__ */


#ifndef __IHatch_FWD_DEFINED__
#define __IHatch_FWD_DEFINED__
typedef interface IHatch IHatch;
#endif 	/* __IHatch_FWD_DEFINED__ */


#ifndef __IColouring_FWD_DEFINED__
#define __IColouring_FWD_DEFINED__
typedef interface IColouring IColouring;
#endif 	/* __IColouring_FWD_DEFINED__ */


#ifndef __IHatches_FWD_DEFINED__
#define __IHatches_FWD_DEFINED__
typedef interface IHatches IHatches;
#endif 	/* __IHatches_FWD_DEFINED__ */


#ifndef __IColourings_FWD_DEFINED__
#define __IColourings_FWD_DEFINED__
typedef interface IColourings IColourings;
#endif 	/* __IColourings_FWD_DEFINED__ */


#ifndef __ISpecRough_FWD_DEFINED__
#define __ISpecRough_FWD_DEFINED__
typedef interface ISpecRough ISpecRough;
#endif 	/* __ISpecRough_FWD_DEFINED__ */


#ifndef __ITechnicalDemand_FWD_DEFINED__
#define __ITechnicalDemand_FWD_DEFINED__
typedef interface ITechnicalDemand ITechnicalDemand;
#endif 	/* __ITechnicalDemand_FWD_DEFINED__ */


#ifndef __IRaster_FWD_DEFINED__
#define __IRaster_FWD_DEFINED__
typedef interface IRaster IRaster;
#endif 	/* __IRaster_FWD_DEFINED__ */


#ifndef __IRasters_FWD_DEFINED__
#define __IRasters_FWD_DEFINED__
typedef interface IRasters IRasters;
#endif 	/* __IRasters_FWD_DEFINED__ */


#ifndef __IOleDrawingObject_FWD_DEFINED__
#define __IOleDrawingObject_FWD_DEFINED__
typedef interface IOleDrawingObject IOleDrawingObject;
#endif 	/* __IOleDrawingObject_FWD_DEFINED__ */


#ifndef __IOleDrawingObjects_FWD_DEFINED__
#define __IOleDrawingObjects_FWD_DEFINED__
typedef interface IOleDrawingObjects IOleDrawingObjects;
#endif 	/* __IOleDrawingObjects_FWD_DEFINED__ */


#ifndef __IAnnotativeObject_FWD_DEFINED__
#define __IAnnotativeObject_FWD_DEFINED__
typedef interface IAnnotativeObject IAnnotativeObject;
#endif 	/* __IAnnotativeObject_FWD_DEFINED__ */


#ifndef __IAnnotativeContainer_FWD_DEFINED__
#define __IAnnotativeContainer_FWD_DEFINED__
typedef interface IAnnotativeContainer IAnnotativeContainer;
#endif 	/* __IAnnotativeContainer_FWD_DEFINED__ */


#ifndef __IWaveLine_FWD_DEFINED__
#define __IWaveLine_FWD_DEFINED__
typedef interface IWaveLine IWaveLine;
#endif 	/* __IWaveLine_FWD_DEFINED__ */


#ifndef __IWaveLines_FWD_DEFINED__
#define __IWaveLines_FWD_DEFINED__
typedef interface IWaveLines IWaveLines;
#endif 	/* __IWaveLines_FWD_DEFINED__ */


#ifndef __IBrokenLine_FWD_DEFINED__
#define __IBrokenLine_FWD_DEFINED__
typedef interface IBrokenLine IBrokenLine;
#endif 	/* __IBrokenLine_FWD_DEFINED__ */


#ifndef __IBrokenLines_FWD_DEFINED__
#define __IBrokenLines_FWD_DEFINED__
typedef interface IBrokenLines IBrokenLines;
#endif 	/* __IBrokenLines_FWD_DEFINED__ */


#ifndef __ICopyObjectParam_FWD_DEFINED__
#define __ICopyObjectParam_FWD_DEFINED__
typedef interface ICopyObjectParam ICopyObjectParam;
#endif 	/* __ICopyObjectParam_FWD_DEFINED__ */


#ifndef __ICurveCopyObjectParam_FWD_DEFINED__
#define __ICurveCopyObjectParam_FWD_DEFINED__
typedef interface ICurveCopyObjectParam ICurveCopyObjectParam;
#endif 	/* __ICurveCopyObjectParam_FWD_DEFINED__ */


#ifndef __ICircleCopyObjectParam_FWD_DEFINED__
#define __ICircleCopyObjectParam_FWD_DEFINED__
typedef interface ICircleCopyObjectParam ICircleCopyObjectParam;
#endif 	/* __ICircleCopyObjectParam_FWD_DEFINED__ */


#ifndef __IPaintObject_FWD_DEFINED__
#define __IPaintObject_FWD_DEFINED__
typedef interface IPaintObject IPaintObject;
#endif 	/* __IPaintObject_FWD_DEFINED__ */


#ifndef __IGabaritObject_FWD_DEFINED__
#define __IGabaritObject_FWD_DEFINED__
typedef interface IGabaritObject IGabaritObject;
#endif 	/* __IGabaritObject_FWD_DEFINED__ */


#ifndef __ksGLObject_FWD_DEFINED__
#define __ksGLObject_FWD_DEFINED__
typedef interface ksGLObject ksGLObject;
#endif 	/* __ksGLObject_FWD_DEFINED__ */


#ifndef __IExternalTessellationObject_FWD_DEFINED__
#define __IExternalTessellationObject_FWD_DEFINED__
typedef interface IExternalTessellationObject IExternalTessellationObject;
#endif 	/* __IExternalTessellationObject_FWD_DEFINED__ */


#ifndef __IExternalTessellationManager_FWD_DEFINED__
#define __IExternalTessellationManager_FWD_DEFINED__
typedef interface IExternalTessellationManager IExternalTessellationManager;
#endif 	/* __IExternalTessellationManager_FWD_DEFINED__ */


#ifndef __IExternalGDIObject_FWD_DEFINED__
#define __IExternalGDIObject_FWD_DEFINED__
typedef interface IExternalGDIObject IExternalGDIObject;
#endif 	/* __IExternalGDIObject_FWD_DEFINED__ */


#ifndef __KompasDocument_FWD_DEFINED__
#define __KompasDocument_FWD_DEFINED__

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

#endif 	/* __KompasDocument_FWD_DEFINED__ */


#ifndef ___Application_FWD_DEFINED__
#define ___Application_FWD_DEFINED__

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

#endif 	/* ___Application_FWD_DEFINED__ */


#ifndef __Documents_FWD_DEFINED__
#define __Documents_FWD_DEFINED__

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

#endif 	/* __Documents_FWD_DEFINED__ */


#ifndef __DocumentFrame_FWD_DEFINED__
#define __DocumentFrame_FWD_DEFINED__

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

#endif 	/* __DocumentFrame_FWD_DEFINED__ */


#ifndef __DocumentFrames_FWD_DEFINED__
#define __DocumentFrames_FWD_DEFINED__

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

#endif 	/* __DocumentFrames_FWD_DEFINED__ */


#ifndef __ProcessParam_FWD_DEFINED__
#define __ProcessParam_FWD_DEFINED__

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

#endif 	/* __ProcessParam_FWD_DEFINED__ */


#ifndef __PropertyControls_FWD_DEFINED__
#define __PropertyControls_FWD_DEFINED__

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

#endif 	/* __PropertyControls_FWD_DEFINED__ */


#ifndef __PropertyTab_FWD_DEFINED__
#define __PropertyTab_FWD_DEFINED__

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

#endif 	/* __PropertyTab_FWD_DEFINED__ */


#ifndef __PropertyTabs_FWD_DEFINED__
#define __PropertyTabs_FWD_DEFINED__

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

#endif 	/* __PropertyTabs_FWD_DEFINED__ */


#ifndef __PropertyEdit_FWD_DEFINED__
#define __PropertyEdit_FWD_DEFINED__

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

#endif 	/* __PropertyEdit_FWD_DEFINED__ */


#ifndef __PropertySeparator_FWD_DEFINED__
#define __PropertySeparator_FWD_DEFINED__

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

#endif 	/* __PropertySeparator_FWD_DEFINED__ */


#ifndef __PropertyList_FWD_DEFINED__
#define __PropertyList_FWD_DEFINED__

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

#endif 	/* __PropertyList_FWD_DEFINED__ */


#ifndef __PropertyCheckBox_FWD_DEFINED__
#define __PropertyCheckBox_FWD_DEFINED__

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

#endif 	/* __PropertyCheckBox_FWD_DEFINED__ */


#ifndef __PropertyMultiButton_FWD_DEFINED__
#define __PropertyMultiButton_FWD_DEFINED__

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

#endif 	/* __PropertyMultiButton_FWD_DEFINED__ */


#ifndef __PropertySlideBox_FWD_DEFINED__
#define __PropertySlideBox_FWD_DEFINED__

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

#endif 	/* __PropertySlideBox_FWD_DEFINED__ */


#ifndef __PropertyUserControl_FWD_DEFINED__
#define __PropertyUserControl_FWD_DEFINED__

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

#endif 	/* __PropertyUserControl_FWD_DEFINED__ */


#ifndef __PropertyGrid_FWD_DEFINED__
#define __PropertyGrid_FWD_DEFINED__

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

#endif 	/* __PropertyGrid_FWD_DEFINED__ */


#ifndef __PropertyManager_FWD_DEFINED__
#define __PropertyManager_FWD_DEFINED__

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

#endif 	/* __PropertyManager_FWD_DEFINED__ */


#ifndef __KompasDocument3D_FWD_DEFINED__
#define __KompasDocument3D_FWD_DEFINED__

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

#endif 	/* __KompasDocument3D_FWD_DEFINED__ */


#ifndef __DrawingDocument_FWD_DEFINED__
#define __DrawingDocument_FWD_DEFINED__

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

#endif 	/* __DrawingDocument_FWD_DEFINED__ */


#ifndef __FragmentDocument_FWD_DEFINED__
#define __FragmentDocument_FWD_DEFINED__

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

#endif 	/* __FragmentDocument_FWD_DEFINED__ */


#ifndef __SpecificationDocument_FWD_DEFINED__
#define __SpecificationDocument_FWD_DEFINED__

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

#endif 	/* __SpecificationDocument_FWD_DEFINED__ */


#ifndef __TextDocument_FWD_DEFINED__
#define __TextDocument_FWD_DEFINED__

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

#endif 	/* __TextDocument_FWD_DEFINED__ */


#ifndef __PartDocument_FWD_DEFINED__
#define __PartDocument_FWD_DEFINED__

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

#endif 	/* __PartDocument_FWD_DEFINED__ */


#ifndef __AssemblyDocument_FWD_DEFINED__
#define __AssemblyDocument_FWD_DEFINED__

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

#endif 	/* __AssemblyDocument_FWD_DEFINED__ */


#ifndef __PropertyTextButton_FWD_DEFINED__
#define __PropertyTextButton_FWD_DEFINED__

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

#endif 	/* __PropertyTextButton_FWD_DEFINED__ */


#ifndef __PropertySpinEdit_FWD_DEFINED__
#define __PropertySpinEdit_FWD_DEFINED__

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

#endif 	/* __PropertySpinEdit_FWD_DEFINED__ */


#ifndef __ViewsAndLayersManager_FWD_DEFINED__
#define __ViewsAndLayersManager_FWD_DEFINED__

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

#endif 	/* __ViewsAndLayersManager_FWD_DEFINED__ */


#ifndef __DrawingObject_FWD_DEFINED__
#define __DrawingObject_FWD_DEFINED__

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

#endif 	/* __DrawingObject_FWD_DEFINED__ */


#ifndef __DrawingObjects_FWD_DEFINED__
#define __DrawingObjects_FWD_DEFINED__

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

#endif 	/* __DrawingObjects_FWD_DEFINED__ */


#ifndef __Views_FWD_DEFINED__
#define __Views_FWD_DEFINED__

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

#endif 	/* __Views_FWD_DEFINED__ */


#ifndef __View_FWD_DEFINED__
#define __View_FWD_DEFINED__

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

#endif 	/* __View_FWD_DEFINED__ */


#ifndef __AssociationView_FWD_DEFINED__
#define __AssociationView_FWD_DEFINED__

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

#endif 	/* __AssociationView_FWD_DEFINED__ */


#ifndef __LayerGroups_FWD_DEFINED__
#define __LayerGroups_FWD_DEFINED__

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

#endif 	/* __LayerGroups_FWD_DEFINED__ */


#ifndef __LayerGroup_FWD_DEFINED__
#define __LayerGroup_FWD_DEFINED__

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

#endif 	/* __LayerGroup_FWD_DEFINED__ */


#ifndef __Layers_FWD_DEFINED__
#define __Layers_FWD_DEFINED__

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

#endif 	/* __Layers_FWD_DEFINED__ */


#ifndef __Layer_FWD_DEFINED__
#define __Layer_FWD_DEFINED__

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

#endif 	/* __Layer_FWD_DEFINED__ */


#ifndef __LayerFilterCondition_FWD_DEFINED__
#define __LayerFilterCondition_FWD_DEFINED__

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

#endif 	/* __LayerFilterCondition_FWD_DEFINED__ */


#ifndef __LayerFilterConditions_FWD_DEFINED__
#define __LayerFilterConditions_FWD_DEFINED__

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

#endif 	/* __LayerFilterConditions_FWD_DEFINED__ */


#ifndef __DocumentSettings_FWD_DEFINED__
#define __DocumentSettings_FWD_DEFINED__

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

#endif 	/* __DocumentSettings_FWD_DEFINED__ */


#ifndef __Document2DSettings_FWD_DEFINED__
#define __Document2DSettings_FWD_DEFINED__

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

#endif 	/* __Document2DSettings_FWD_DEFINED__ */


#ifndef __LibraryManager_FWD_DEFINED__
#define __LibraryManager_FWD_DEFINED__

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

#endif 	/* __LibraryManager_FWD_DEFINED__ */


#ifndef __ProceduresLibrary_FWD_DEFINED__
#define __ProceduresLibrary_FWD_DEFINED__

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

#endif 	/* __ProceduresLibrary_FWD_DEFINED__ */


#ifndef __Procedures_FWD_DEFINED__
#define __Procedures_FWD_DEFINED__

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

#endif 	/* __Procedures_FWD_DEFINED__ */


#ifndef __Procedure_FWD_DEFINED__
#define __Procedure_FWD_DEFINED__

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

#endif 	/* __Procedure_FWD_DEFINED__ */


#ifndef __InsertsLibrary_FWD_DEFINED__
#define __InsertsLibrary_FWD_DEFINED__

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

#endif 	/* __InsertsLibrary_FWD_DEFINED__ */


#ifndef __Inserts_FWD_DEFINED__
#define __Inserts_FWD_DEFINED__

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

#endif 	/* __Inserts_FWD_DEFINED__ */


#ifndef __Insert_FWD_DEFINED__
#define __Insert_FWD_DEFINED__

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

#endif 	/* __Insert_FWD_DEFINED__ */


#ifndef __InsertsLibraries_FWD_DEFINED__
#define __InsertsLibraries_FWD_DEFINED__

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

#endif 	/* __InsertsLibraries_FWD_DEFINED__ */


#ifndef __ProceduresLibraries_FWD_DEFINED__
#define __ProceduresLibraries_FWD_DEFINED__

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

#endif 	/* __ProceduresLibraries_FWD_DEFINED__ */


#ifndef __SpecificationDescriptions_FWD_DEFINED__
#define __SpecificationDescriptions_FWD_DEFINED__

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

#endif 	/* __SpecificationDescriptions_FWD_DEFINED__ */


#ifndef __SpecificationDescription_FWD_DEFINED__
#define __SpecificationDescription_FWD_DEFINED__

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

#endif 	/* __SpecificationDescription_FWD_DEFINED__ */


#ifndef __SpecificationStyle_FWD_DEFINED__
#define __SpecificationStyle_FWD_DEFINED__

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

#endif 	/* __SpecificationStyle_FWD_DEFINED__ */


#ifndef __SpecificationColumnStyles_FWD_DEFINED__
#define __SpecificationColumnStyles_FWD_DEFINED__

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

#endif 	/* __SpecificationColumnStyles_FWD_DEFINED__ */


#ifndef __SpecificationColumnStyle_FWD_DEFINED__
#define __SpecificationColumnStyle_FWD_DEFINED__

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

#endif 	/* __SpecificationColumnStyle_FWD_DEFINED__ */


#ifndef __SpecificationSectionStyles_FWD_DEFINED__
#define __SpecificationSectionStyles_FWD_DEFINED__

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

#endif 	/* __SpecificationSectionStyles_FWD_DEFINED__ */


#ifndef __SpecificationSectionStyle_FWD_DEFINED__
#define __SpecificationSectionStyle_FWD_DEFINED__

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

#endif 	/* __SpecificationSectionStyle_FWD_DEFINED__ */


#ifndef __AdditionalBlockStyles_FWD_DEFINED__
#define __AdditionalBlockStyles_FWD_DEFINED__

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

#endif 	/* __AdditionalBlockStyles_FWD_DEFINED__ */


#ifndef __AdditionalBlockStyle_FWD_DEFINED__
#define __AdditionalBlockStyle_FWD_DEFINED__

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

#endif 	/* __AdditionalBlockStyle_FWD_DEFINED__ */


#ifndef __SheetFormat_FWD_DEFINED__
#define __SheetFormat_FWD_DEFINED__

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

#endif 	/* __SheetFormat_FWD_DEFINED__ */


#ifndef __SpecificationTuning_FWD_DEFINED__
#define __SpecificationTuning_FWD_DEFINED__

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

#endif 	/* __SpecificationTuning_FWD_DEFINED__ */


#ifndef __SpecificationTuningSections_FWD_DEFINED__
#define __SpecificationTuningSections_FWD_DEFINED__

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

#endif 	/* __SpecificationTuningSections_FWD_DEFINED__ */


#ifndef __SpecificationTuningSection_FWD_DEFINED__
#define __SpecificationTuningSection_FWD_DEFINED__

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

#endif 	/* __SpecificationTuningSection_FWD_DEFINED__ */


#ifndef __SpecificationSubsections_FWD_DEFINED__
#define __SpecificationSubsections_FWD_DEFINED__

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

#endif 	/* __SpecificationSubsections_FWD_DEFINED__ */


#ifndef __SpecificationSubsection_FWD_DEFINED__
#define __SpecificationSubsection_FWD_DEFINED__

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

#endif 	/* __SpecificationSubsection_FWD_DEFINED__ */


#ifndef __AdditionalBlockTunings_FWD_DEFINED__
#define __AdditionalBlockTunings_FWD_DEFINED__

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

#endif 	/* __AdditionalBlockTunings_FWD_DEFINED__ */


#ifndef __AdditionalBlockTuning_FWD_DEFINED__
#define __AdditionalBlockTuning_FWD_DEFINED__

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

#endif 	/* __AdditionalBlockTuning_FWD_DEFINED__ */


#ifndef __AdditionalBlockSectionTunings_FWD_DEFINED__
#define __AdditionalBlockSectionTunings_FWD_DEFINED__

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

#endif 	/* __AdditionalBlockSectionTunings_FWD_DEFINED__ */


#ifndef __AdditionalBlockSectionTuning_FWD_DEFINED__
#define __AdditionalBlockSectionTuning_FWD_DEFINED__

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

#endif 	/* __AdditionalBlockSectionTuning_FWD_DEFINED__ */


#ifndef __TextFont_FWD_DEFINED__
#define __TextFont_FWD_DEFINED__

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

#endif 	/* __TextFont_FWD_DEFINED__ */


#ifndef __TextStyle_FWD_DEFINED__
#define __TextStyle_FWD_DEFINED__

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

#endif 	/* __TextStyle_FWD_DEFINED__ */


#ifndef __Tabulators_FWD_DEFINED__
#define __Tabulators_FWD_DEFINED__

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

#endif 	/* __Tabulators_FWD_DEFINED__ */


#ifndef __Tabulator_FWD_DEFINED__
#define __Tabulator_FWD_DEFINED__

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

#endif 	/* __Tabulator_FWD_DEFINED__ */


#ifndef __KompasError_FWD_DEFINED__
#define __KompasError_FWD_DEFINED__

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

#endif 	/* __KompasError_FWD_DEFINED__ */


#ifndef __SpecificationBaseObjects_FWD_DEFINED__
#define __SpecificationBaseObjects_FWD_DEFINED__

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

#endif 	/* __SpecificationBaseObjects_FWD_DEFINED__ */


#ifndef __SpecificationCommentObjects_FWD_DEFINED__
#define __SpecificationCommentObjects_FWD_DEFINED__

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

#endif 	/* __SpecificationCommentObjects_FWD_DEFINED__ */


#ifndef __SpecificationObject_FWD_DEFINED__
#define __SpecificationObject_FWD_DEFINED__

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

#endif 	/* __SpecificationObject_FWD_DEFINED__ */


#ifndef __SpecificationBaseObject_FWD_DEFINED__
#define __SpecificationBaseObject_FWD_DEFINED__

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

#endif 	/* __SpecificationBaseObject_FWD_DEFINED__ */


#ifndef __SpecificationCommentObject_FWD_DEFINED__
#define __SpecificationCommentObject_FWD_DEFINED__

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

#endif 	/* __SpecificationCommentObject_FWD_DEFINED__ */


#ifndef __SpecificationColumns_FWD_DEFINED__
#define __SpecificationColumns_FWD_DEFINED__

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

#endif 	/* __SpecificationColumns_FWD_DEFINED__ */


#ifndef __SpecificationColumn_FWD_DEFINED__
#define __SpecificationColumn_FWD_DEFINED__

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

#endif 	/* __SpecificationColumn_FWD_DEFINED__ */


#ifndef __SpecificationColumnItems_FWD_DEFINED__
#define __SpecificationColumnItems_FWD_DEFINED__

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

#endif 	/* __SpecificationColumnItems_FWD_DEFINED__ */


#ifndef __SpecificationColumnItem_FWD_DEFINED__
#define __SpecificationColumnItem_FWD_DEFINED__

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

#endif 	/* __SpecificationColumnItem_FWD_DEFINED__ */


#ifndef __AttachedDocuments_FWD_DEFINED__
#define __AttachedDocuments_FWD_DEFINED__

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

#endif 	/* __AttachedDocuments_FWD_DEFINED__ */


#ifndef __AttachedDocument_FWD_DEFINED__
#define __AttachedDocument_FWD_DEFINED__

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

#endif 	/* __AttachedDocument_FWD_DEFINED__ */


#ifndef __PropertyFileName_FWD_DEFINED__
#define __PropertyFileName_FWD_DEFINED__

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

#endif 	/* __PropertyFileName_FWD_DEFINED__ */


#ifndef __PropertyColor_FWD_DEFINED__
#define __PropertyColor_FWD_DEFINED__

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

#endif 	/* __PropertyColor_FWD_DEFINED__ */


#ifndef __LayoutSheets_FWD_DEFINED__
#define __LayoutSheets_FWD_DEFINED__

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

#endif 	/* __LayoutSheets_FWD_DEFINED__ */


#ifndef __LayoutSheet_FWD_DEFINED__
#define __LayoutSheet_FWD_DEFINED__

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

#endif 	/* __LayoutSheet_FWD_DEFINED__ */


#ifndef __Converter_FWD_DEFINED__
#define __Converter_FWD_DEFINED__

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

#endif 	/* __Converter_FWD_DEFINED__ */


#ifndef __CheckSum_FWD_DEFINED__
#define __CheckSum_FWD_DEFINED__

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

#endif 	/* __CheckSum_FWD_DEFINED__ */


#ifndef __ModelObject_FWD_DEFINED__
#define __ModelObject_FWD_DEFINED__

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

#endif 	/* __ModelObject_FWD_DEFINED__ */


#ifndef __ModelObjects_FWD_DEFINED__
#define __ModelObjects_FWD_DEFINED__

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

#endif 	/* __ModelObjects_FWD_DEFINED__ */


#ifndef __Parts7_FWD_DEFINED__
#define __Parts7_FWD_DEFINED__

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

#endif 	/* __Parts7_FWD_DEFINED__ */


#ifndef __Part7_FWD_DEFINED__
#define __Part7_FWD_DEFINED__

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

#endif 	/* __Part7_FWD_DEFINED__ */


#ifndef __Sketchs_FWD_DEFINED__
#define __Sketchs_FWD_DEFINED__

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

#endif 	/* __Sketchs_FWD_DEFINED__ */


#ifndef __Extrusions_FWD_DEFINED__
#define __Extrusions_FWD_DEFINED__

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

#endif 	/* __Extrusions_FWD_DEFINED__ */


#ifndef __VariableTable_FWD_DEFINED__
#define __VariableTable_FWD_DEFINED__

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

#endif 	/* __VariableTable_FWD_DEFINED__ */


#ifndef __ProgressBarIndicator_FWD_DEFINED__
#define __ProgressBarIndicator_FWD_DEFINED__

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

#endif 	/* __ProgressBarIndicator_FWD_DEFINED__ */


#ifndef __Text_FWD_DEFINED__
#define __Text_FWD_DEFINED__

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

#endif 	/* __Text_FWD_DEFINED__ */


#ifndef __TextLine_FWD_DEFINED__
#define __TextLine_FWD_DEFINED__

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

#endif 	/* __TextLine_FWD_DEFINED__ */


#ifndef __TextItem_FWD_DEFINED__
#define __TextItem_FWD_DEFINED__

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

#endif 	/* __TextItem_FWD_DEFINED__ */


#ifndef __DrawingText_FWD_DEFINED__
#define __DrawingText_FWD_DEFINED__

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

#endif 	/* __DrawingText_FWD_DEFINED__ */


#ifndef __DrawingTexts_FWD_DEFINED__
#define __DrawingTexts_FWD_DEFINED__

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

#endif 	/* __DrawingTexts_FWD_DEFINED__ */


#ifndef __Marks_FWD_DEFINED__
#define __Marks_FWD_DEFINED__

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

#endif 	/* __Marks_FWD_DEFINED__ */


#ifndef __MarkInsideForm_FWD_DEFINED__
#define __MarkInsideForm_FWD_DEFINED__

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

#endif 	/* __MarkInsideForm_FWD_DEFINED__ */


#ifndef __MarkOnLine_FWD_DEFINED__
#define __MarkOnLine_FWD_DEFINED__

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

#endif 	/* __MarkOnLine_FWD_DEFINED__ */


#ifndef __MarkOnLeader_FWD_DEFINED__
#define __MarkOnLeader_FWD_DEFINED__

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

#endif 	/* __MarkOnLeader_FWD_DEFINED__ */


#ifndef __UserDataStoragesMng_FWD_DEFINED__
#define __UserDataStoragesMng_FWD_DEFINED__

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

#endif 	/* __UserDataStoragesMng_FWD_DEFINED__ */


#ifndef __UserDataStorages_FWD_DEFINED__
#define __UserDataStorages_FWD_DEFINED__

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

#endif 	/* __UserDataStorages_FWD_DEFINED__ */


#ifndef __UserDataStorage_FWD_DEFINED__
#define __UserDataStorage_FWD_DEFINED__

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

#endif 	/* __UserDataStorage_FWD_DEFINED__ */


#ifndef __BuildingAxes_FWD_DEFINED__
#define __BuildingAxes_FWD_DEFINED__

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

#endif 	/* __BuildingAxes_FWD_DEFINED__ */


#ifndef __StraightAxis_FWD_DEFINED__
#define __StraightAxis_FWD_DEFINED__

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

#endif 	/* __StraightAxis_FWD_DEFINED__ */


#ifndef __ArcAxis_FWD_DEFINED__
#define __ArcAxis_FWD_DEFINED__

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

#endif 	/* __ArcAxis_FWD_DEFINED__ */


#ifndef __CircleAxis_FWD_DEFINED__
#define __CircleAxis_FWD_DEFINED__

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

#endif 	/* __CircleAxis_FWD_DEFINED__ */


#ifndef __AxisJut_FWD_DEFINED__
#define __AxisJut_FWD_DEFINED__

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

#endif 	/* __AxisJut_FWD_DEFINED__ */


#ifndef __MarkNodes_FWD_DEFINED__
#define __MarkNodes_FWD_DEFINED__

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

#endif 	/* __MarkNodes_FWD_DEFINED__ */


#ifndef __MarkNode_FWD_DEFINED__
#define __MarkNode_FWD_DEFINED__

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

#endif 	/* __MarkNode_FWD_DEFINED__ */


#ifndef __LineSegments_FWD_DEFINED__
#define __LineSegments_FWD_DEFINED__

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

#endif 	/* __LineSegments_FWD_DEFINED__ */


#ifndef __LineSegment_FWD_DEFINED__
#define __LineSegment_FWD_DEFINED__

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

#endif 	/* __LineSegment_FWD_DEFINED__ */


#ifndef __SystemSettings_FWD_DEFINED__
#define __SystemSettings_FWD_DEFINED__

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

#endif 	/* __SystemSettings_FWD_DEFINED__ */


#ifndef __CutUnitMarking_FWD_DEFINED__
#define __CutUnitMarking_FWD_DEFINED__

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

#endif 	/* __CutUnitMarking_FWD_DEFINED__ */


#ifndef __CutUnitMarkings_FWD_DEFINED__
#define __CutUnitMarkings_FWD_DEFINED__

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

#endif 	/* __CutUnitMarkings_FWD_DEFINED__ */


#ifndef __UnitMarking_FWD_DEFINED__
#define __UnitMarking_FWD_DEFINED__

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

#endif 	/* __UnitMarking_FWD_DEFINED__ */


#ifndef __UnitMarkings_FWD_DEFINED__
#define __UnitMarkings_FWD_DEFINED__

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

#endif 	/* __UnitMarkings_FWD_DEFINED__ */


#ifndef __Arcs_FWD_DEFINED__
#define __Arcs_FWD_DEFINED__

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

#endif 	/* __Arcs_FWD_DEFINED__ */


#ifndef ___Arc_FWD_DEFINED__
#define ___Arc_FWD_DEFINED__

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

#endif 	/* ___Arc_FWD_DEFINED__ */


#ifndef __MultiTextLeader_FWD_DEFINED__
#define __MultiTextLeader_FWD_DEFINED__

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

#endif 	/* __MultiTextLeader_FWD_DEFINED__ */


#ifndef __MultiTextLeaders_FWD_DEFINED__
#define __MultiTextLeaders_FWD_DEFINED__

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

#endif 	/* __MultiTextLeaders_FWD_DEFINED__ */


#ifndef __Brace_FWD_DEFINED__
#define __Brace_FWD_DEFINED__

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

#endif 	/* __Brace_FWD_DEFINED__ */


#ifndef __Braces_FWD_DEFINED__
#define __Braces_FWD_DEFINED__

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

#endif 	/* __Braces_FWD_DEFINED__ */


#ifndef __UnitNumber_FWD_DEFINED__
#define __UnitNumber_FWD_DEFINED__

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

#endif 	/* __UnitNumber_FWD_DEFINED__ */


#ifndef __UnitNumbers_FWD_DEFINED__
#define __UnitNumbers_FWD_DEFINED__

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

#endif 	/* __UnitNumbers_FWD_DEFINED__ */


#ifndef __Sketch_FWD_DEFINED__
#define __Sketch_FWD_DEFINED__

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

#endif 	/* __Sketch_FWD_DEFINED__ */


#ifndef __Extrusion_FWD_DEFINED__
#define __Extrusion_FWD_DEFINED__

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

#endif 	/* __Extrusion_FWD_DEFINED__ */


#ifndef __ParametriticConstraint_FWD_DEFINED__
#define __ParametriticConstraint_FWD_DEFINED__

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

#endif 	/* __ParametriticConstraint_FWD_DEFINED__ */


#ifndef __CutExtrusion_FWD_DEFINED__
#define __CutExtrusion_FWD_DEFINED__

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

#endif 	/* __CutExtrusion_FWD_DEFINED__ */


#ifndef __Body7_FWD_DEFINED__
#define __Body7_FWD_DEFINED__

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

#endif 	/* __Body7_FWD_DEFINED__ */


#ifndef __SheetMetalBodies_FWD_DEFINED__
#define __SheetMetalBodies_FWD_DEFINED__

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

#endif 	/* __SheetMetalBodies_FWD_DEFINED__ */


#ifndef __SheetMetalBody_FWD_DEFINED__
#define __SheetMetalBody_FWD_DEFINED__

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

#endif 	/* __SheetMetalBody_FWD_DEFINED__ */


#ifndef __Points3D_FWD_DEFINED__
#define __Points3D_FWD_DEFINED__

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

#endif 	/* __Points3D_FWD_DEFINED__ */


#ifndef __Point3D_FWD_DEFINED__
#define __Point3D_FWD_DEFINED__

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

#endif 	/* __Point3D_FWD_DEFINED__ */


#ifndef __Point3DParamDisplace_FWD_DEFINED__
#define __Point3DParamDisplace_FWD_DEFINED__

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

#endif 	/* __Point3DParamDisplace_FWD_DEFINED__ */


#ifndef __Point3DParamIntersect_FWD_DEFINED__
#define __Point3DParamIntersect_FWD_DEFINED__

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

#endif 	/* __Point3DParamIntersect_FWD_DEFINED__ */


#ifndef __Point3DParamCenter_FWD_DEFINED__
#define __Point3DParamCenter_FWD_DEFINED__

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

#endif 	/* __Point3DParamCenter_FWD_DEFINED__ */


#ifndef __Point3DParamCurve_FWD_DEFINED__
#define __Point3DParamCurve_FWD_DEFINED__

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

#endif 	/* __Point3DParamCurve_FWD_DEFINED__ */


#ifndef __Point3DParamSurface_FWD_DEFINED__
#define __Point3DParamSurface_FWD_DEFINED__

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

#endif 	/* __Point3DParamSurface_FWD_DEFINED__ */


#ifndef __Point3DParamProjection_FWD_DEFINED__
#define __Point3DParamProjection_FWD_DEFINED__

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

#endif 	/* __Point3DParamProjection_FWD_DEFINED__ */


#ifndef __SheetMetalBends_FWD_DEFINED__
#define __SheetMetalBends_FWD_DEFINED__

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

#endif 	/* __SheetMetalBends_FWD_DEFINED__ */


#ifndef __SheetMetalBend_FWD_DEFINED__
#define __SheetMetalBend_FWD_DEFINED__

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

#endif 	/* __SheetMetalBend_FWD_DEFINED__ */


#ifndef __SheetMetalLineBends_FWD_DEFINED__
#define __SheetMetalLineBends_FWD_DEFINED__

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

#endif 	/* __SheetMetalLineBends_FWD_DEFINED__ */


#ifndef __SheetMetalLineBend_FWD_DEFINED__
#define __SheetMetalLineBend_FWD_DEFINED__

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

#endif 	/* __SheetMetalLineBend_FWD_DEFINED__ */


#ifndef __SheetMetalHole_FWD_DEFINED__
#define __SheetMetalHole_FWD_DEFINED__

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

#endif 	/* __SheetMetalHole_FWD_DEFINED__ */


#ifndef __SheetMetalHoles_FWD_DEFINED__
#define __SheetMetalHoles_FWD_DEFINED__

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

#endif 	/* __SheetMetalHoles_FWD_DEFINED__ */


#ifndef __SheetMetalCut_FWD_DEFINED__
#define __SheetMetalCut_FWD_DEFINED__

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

#endif 	/* __SheetMetalCut_FWD_DEFINED__ */


#ifndef __SheetMetalCuts_FWD_DEFINED__
#define __SheetMetalCuts_FWD_DEFINED__

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

#endif 	/* __SheetMetalCuts_FWD_DEFINED__ */


#ifndef __RadialDimension_FWD_DEFINED__
#define __RadialDimension_FWD_DEFINED__

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

#endif 	/* __RadialDimension_FWD_DEFINED__ */


#ifndef __RadialDimensions_FWD_DEFINED__
#define __RadialDimensions_FWD_DEFINED__

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

#endif 	/* __RadialDimensions_FWD_DEFINED__ */


#ifndef __BreakRadialDimension_FWD_DEFINED__
#define __BreakRadialDimension_FWD_DEFINED__

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

#endif 	/* __BreakRadialDimension_FWD_DEFINED__ */


#ifndef __RadialBreakDimensions_FWD_DEFINED__
#define __RadialBreakDimensions_FWD_DEFINED__

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

#endif 	/* __RadialBreakDimensions_FWD_DEFINED__ */


#ifndef __DiametralDimension_FWD_DEFINED__
#define __DiametralDimension_FWD_DEFINED__

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

#endif 	/* __DiametralDimension_FWD_DEFINED__ */


#ifndef __DiametralDimensions_FWD_DEFINED__
#define __DiametralDimensions_FWD_DEFINED__

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

#endif 	/* __DiametralDimensions_FWD_DEFINED__ */


#ifndef __LineDimensions3D_FWD_DEFINED__
#define __LineDimensions3D_FWD_DEFINED__

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

#endif 	/* __LineDimensions3D_FWD_DEFINED__ */


#ifndef __BaseLineDimension3D_FWD_DEFINED__
#define __BaseLineDimension3D_FWD_DEFINED__

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

#endif 	/* __BaseLineDimension3D_FWD_DEFINED__ */


#ifndef __LineDimension3D_FWD_DEFINED__
#define __LineDimension3D_FWD_DEFINED__

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

#endif 	/* __LineDimension3D_FWD_DEFINED__ */


#ifndef __LineDimension_FWD_DEFINED__
#define __LineDimension_FWD_DEFINED__

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

#endif 	/* __LineDimension_FWD_DEFINED__ */


#ifndef __LineDimensions_FWD_DEFINED__
#define __LineDimensions_FWD_DEFINED__

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

#endif 	/* __LineDimensions_FWD_DEFINED__ */


#ifndef __RadialDimension3D_FWD_DEFINED__
#define __RadialDimension3D_FWD_DEFINED__

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

#endif 	/* __RadialDimension3D_FWD_DEFINED__ */


#ifndef __DiametralDimension3D_FWD_DEFINED__
#define __DiametralDimension3D_FWD_DEFINED__

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

#endif 	/* __DiametralDimension3D_FWD_DEFINED__ */


#ifndef __RadialDimensions3D_FWD_DEFINED__
#define __RadialDimensions3D_FWD_DEFINED__

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

#endif 	/* __RadialDimensions3D_FWD_DEFINED__ */


#ifndef __DiametralDimensions3D_FWD_DEFINED__
#define __DiametralDimensions3D_FWD_DEFINED__

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

#endif 	/* __DiametralDimensions3D_FWD_DEFINED__ */


#ifndef __BreakLineDimension_FWD_DEFINED__
#define __BreakLineDimension_FWD_DEFINED__

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

#endif 	/* __BreakLineDimension_FWD_DEFINED__ */


#ifndef __BreakLineDimensions_FWD_DEFINED__
#define __BreakLineDimensions_FWD_DEFINED__

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

#endif 	/* __BreakLineDimensions_FWD_DEFINED__ */


#ifndef __HeightDimension_FWD_DEFINED__
#define __HeightDimension_FWD_DEFINED__

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

#endif 	/* __HeightDimension_FWD_DEFINED__ */


#ifndef __HeightDimensions_FWD_DEFINED__
#define __HeightDimensions_FWD_DEFINED__

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

#endif 	/* __HeightDimensions_FWD_DEFINED__ */


#ifndef __AngleDimension_FWD_DEFINED__
#define __AngleDimension_FWD_DEFINED__

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

#endif 	/* __AngleDimension_FWD_DEFINED__ */


#ifndef __AngleDimensions_FWD_DEFINED__
#define __AngleDimensions_FWD_DEFINED__

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

#endif 	/* __AngleDimensions_FWD_DEFINED__ */


#ifndef __BreakAngleDimension_FWD_DEFINED__
#define __BreakAngleDimension_FWD_DEFINED__

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

#endif 	/* __BreakAngleDimension_FWD_DEFINED__ */


#ifndef __ArcDimension_FWD_DEFINED__
#define __ArcDimension_FWD_DEFINED__

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

#endif 	/* __ArcDimension_FWD_DEFINED__ */


#ifndef __ArcDimensions_FWD_DEFINED__
#define __ArcDimensions_FWD_DEFINED__

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

#endif 	/* __ArcDimensions_FWD_DEFINED__ */


#ifndef __AngleDimension3D_FWD_DEFINED__
#define __AngleDimension3D_FWD_DEFINED__

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

#endif 	/* __AngleDimension3D_FWD_DEFINED__ */


#ifndef __AngleDimensions3D_FWD_DEFINED__
#define __AngleDimensions3D_FWD_DEFINED__

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

#endif 	/* __AngleDimensions3D_FWD_DEFINED__ */


#ifndef __CurveVertexParam_FWD_DEFINED__
#define __CurveVertexParam_FWD_DEFINED__

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

#endif 	/* __CurveVertexParam_FWD_DEFINED__ */


#ifndef __Splines3D_FWD_DEFINED__
#define __Splines3D_FWD_DEFINED__

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

#endif 	/* __Splines3D_FWD_DEFINED__ */


#ifndef __Spline3D_FWD_DEFINED__
#define __Spline3D_FWD_DEFINED__

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

#endif 	/* __Spline3D_FWD_DEFINED__ */


#ifndef __LocalCoordinateSystem_FWD_DEFINED__
#define __LocalCoordinateSystem_FWD_DEFINED__

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

#endif 	/* __LocalCoordinateSystem_FWD_DEFINED__ */


#ifndef __LocalCoordinateSystems_FWD_DEFINED__
#define __LocalCoordinateSystems_FWD_DEFINED__

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

#endif 	/* __LocalCoordinateSystems_FWD_DEFINED__ */


#ifndef __LocalCSAxesDirectionParam_FWD_DEFINED__
#define __LocalCSAxesDirectionParam_FWD_DEFINED__

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

#endif 	/* __LocalCSAxesDirectionParam_FWD_DEFINED__ */


#ifndef __LocalCSEulerParam_FWD_DEFINED__
#define __LocalCSEulerParam_FWD_DEFINED__

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

#endif 	/* __LocalCSEulerParam_FWD_DEFINED__ */


#ifndef __PolyLine_FWD_DEFINED__
#define __PolyLine_FWD_DEFINED__

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

#endif 	/* __PolyLine_FWD_DEFINED__ */


#ifndef __PolyLines_FWD_DEFINED__
#define __PolyLines_FWD_DEFINED__

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

#endif 	/* __PolyLines_FWD_DEFINED__ */


#ifndef __BaseLeader_FWD_DEFINED__
#define __BaseLeader_FWD_DEFINED__

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

#endif 	/* __BaseLeader_FWD_DEFINED__ */


#ifndef __Leaders_FWD_DEFINED__
#define __Leaders_FWD_DEFINED__

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

#endif 	/* __Leaders_FWD_DEFINED__ */


#ifndef __Roughs_FWD_DEFINED__
#define __Roughs_FWD_DEFINED__

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

#endif 	/* __Roughs_FWD_DEFINED__ */


#ifndef __Rough_FWD_DEFINED__
#define __Rough_FWD_DEFINED__

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

#endif 	/* __Rough_FWD_DEFINED__ */


#ifndef __BaseLeader3D_FWD_DEFINED__
#define __BaseLeader3D_FWD_DEFINED__

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

#endif 	/* __BaseLeader3D_FWD_DEFINED__ */


#ifndef __Leaders3D_FWD_DEFINED__
#define __Leaders3D_FWD_DEFINED__

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

#endif 	/* __Leaders3D_FWD_DEFINED__ */


#ifndef __Rough3D_FWD_DEFINED__
#define __Rough3D_FWD_DEFINED__

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

#endif 	/* __Rough3D_FWD_DEFINED__ */


#ifndef __Roughs3D_FWD_DEFINED__
#define __Roughs3D_FWD_DEFINED__

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

#endif 	/* __Roughs3D_FWD_DEFINED__ */


#ifndef ___Base_FWD_DEFINED__
#define ___Base_FWD_DEFINED__

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

#endif 	/* ___Base_FWD_DEFINED__ */


#ifndef __Bases_FWD_DEFINED__
#define __Bases_FWD_DEFINED__

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

#endif 	/* __Bases_FWD_DEFINED__ */


#ifndef __TableCell_FWD_DEFINED__
#define __TableCell_FWD_DEFINED__

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

#endif 	/* __TableCell_FWD_DEFINED__ */


#ifndef __DrawingTable_FWD_DEFINED__
#define __DrawingTable_FWD_DEFINED__

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

#endif 	/* __DrawingTable_FWD_DEFINED__ */


#ifndef __DrawingTables_FWD_DEFINED__
#define __DrawingTables_FWD_DEFINED__

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

#endif 	/* __DrawingTables_FWD_DEFINED__ */


#ifndef __Tolerances_FWD_DEFINED__
#define __Tolerances_FWD_DEFINED__

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

#endif 	/* __Tolerances_FWD_DEFINED__ */


#ifndef ___Tolerance_FWD_DEFINED__
#define ___Tolerance_FWD_DEFINED__

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

#endif 	/* ___Tolerance_FWD_DEFINED__ */


#ifndef __Bases3D_FWD_DEFINED__
#define __Bases3D_FWD_DEFINED__

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

#endif 	/* __Bases3D_FWD_DEFINED__ */


#ifndef __Base3D_FWD_DEFINED__
#define __Base3D_FWD_DEFINED__

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

#endif 	/* __Base3D_FWD_DEFINED__ */


#ifndef __Tolerances3D_FWD_DEFINED__
#define __Tolerances3D_FWD_DEFINED__

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

#endif 	/* __Tolerances3D_FWD_DEFINED__ */


#ifndef __Tolerance3D_FWD_DEFINED__
#define __Tolerance3D_FWD_DEFINED__

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

#endif 	/* __Tolerance3D_FWD_DEFINED__ */


#ifndef __LocalCSOrientByObjectParam_FWD_DEFINED__
#define __LocalCSOrientByObjectParam_FWD_DEFINED__

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

#endif 	/* __LocalCSOrientByObjectParam_FWD_DEFINED__ */


#ifndef __CutLine_FWD_DEFINED__
#define __CutLine_FWD_DEFINED__

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

#endif 	/* __CutLine_FWD_DEFINED__ */


#ifndef __CutLines_FWD_DEFINED__
#define __CutLines_FWD_DEFINED__

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

#endif 	/* __CutLines_FWD_DEFINED__ */


#ifndef __ExternalTessellationObject_FWD_DEFINED__
#define __ExternalTessellationObject_FWD_DEFINED__

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

#endif 	/* __ExternalTessellationObject_FWD_DEFINED__ */


#ifndef __ControlPoints_FWD_DEFINED__
#define __ControlPoints_FWD_DEFINED__

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

#endif 	/* __ControlPoints_FWD_DEFINED__ */


#ifndef __ControlPoint_FWD_DEFINED__
#define __ControlPoint_FWD_DEFINED__

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

#endif 	/* __ControlPoint_FWD_DEFINED__ */


#ifndef __ConjunctivePoints_FWD_DEFINED__
#define __ConjunctivePoints_FWD_DEFINED__

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

#endif 	/* __ConjunctivePoints_FWD_DEFINED__ */


#ifndef __ConjunctivePoint_FWD_DEFINED__
#define __ConjunctivePoint_FWD_DEFINED__

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

#endif 	/* __ConjunctivePoint_FWD_DEFINED__ */


#ifndef __PropertyBmpList_FWD_DEFINED__
#define __PropertyBmpList_FWD_DEFINED__

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

#endif 	/* __PropertyBmpList_FWD_DEFINED__ */


#ifndef __ViewPointer_FWD_DEFINED__
#define __ViewPointer_FWD_DEFINED__

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

#endif 	/* __ViewPointer_FWD_DEFINED__ */


#ifndef __ViewPointers_FWD_DEFINED__
#define __ViewPointers_FWD_DEFINED__

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

#endif 	/* __ViewPointers_FWD_DEFINED__ */


#ifndef __Multiline_FWD_DEFINED__
#define __Multiline_FWD_DEFINED__

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

#endif 	/* __Multiline_FWD_DEFINED__ */


#ifndef __Multilines_FWD_DEFINED__
#define __Multilines_FWD_DEFINED__

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

#endif 	/* __Multilines_FWD_DEFINED__ */


#ifndef __Contour_FWD_DEFINED__
#define __Contour_FWD_DEFINED__

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

#endif 	/* __Contour_FWD_DEFINED__ */


#ifndef __ContourSegment_FWD_DEFINED__
#define __ContourSegment_FWD_DEFINED__

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

#endif 	/* __ContourSegment_FWD_DEFINED__ */


#ifndef __ContourLineSegment_FWD_DEFINED__
#define __ContourLineSegment_FWD_DEFINED__

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

#endif 	/* __ContourLineSegment_FWD_DEFINED__ */


#ifndef __ContourArc_FWD_DEFINED__
#define __ContourArc_FWD_DEFINED__

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

#endif 	/* __ContourArc_FWD_DEFINED__ */


#ifndef __Curve2D_FWD_DEFINED__
#define __Curve2D_FWD_DEFINED__

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

#endif 	/* __Curve2D_FWD_DEFINED__ */


#ifndef __DrawingContours_FWD_DEFINED__
#define __DrawingContours_FWD_DEFINED__

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

#endif 	/* __DrawingContours_FWD_DEFINED__ */


#ifndef __DrawingContour_FWD_DEFINED__
#define __DrawingContour_FWD_DEFINED__

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

#endif 	/* __DrawingContour_FWD_DEFINED__ */


#ifndef __SplitLines_FWD_DEFINED__
#define __SplitLines_FWD_DEFINED__

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

#endif 	/* __SplitLines_FWD_DEFINED__ */


#ifndef __SplitLine_FWD_DEFINED__
#define __SplitLine_FWD_DEFINED__

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

#endif 	/* __SplitLine_FWD_DEFINED__ */


#ifndef __SurfacePatches_FWD_DEFINED__
#define __SurfacePatches_FWD_DEFINED__

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

#endif 	/* __SurfacePatches_FWD_DEFINED__ */


#ifndef __SurfacePatch_FWD_DEFINED__
#define __SurfacePatch_FWD_DEFINED__

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

#endif 	/* __SurfacePatch_FWD_DEFINED__ */


#ifndef __FaceRemovers_FWD_DEFINED__
#define __FaceRemovers_FWD_DEFINED__

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

#endif 	/* __FaceRemovers_FWD_DEFINED__ */


#ifndef __FaceRemover_FWD_DEFINED__
#define __FaceRemover_FWD_DEFINED__

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

#endif 	/* __FaceRemover_FWD_DEFINED__ */


#ifndef __SurfaceSewers_FWD_DEFINED__
#define __SurfaceSewers_FWD_DEFINED__

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

#endif 	/* __SurfaceSewers_FWD_DEFINED__ */


#ifndef __SurfaceSewer_FWD_DEFINED__
#define __SurfaceSewer_FWD_DEFINED__

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

#endif 	/* __SurfaceSewer_FWD_DEFINED__ */


#ifndef __NurbsSurfaces_FWD_DEFINED__
#define __NurbsSurfaces_FWD_DEFINED__

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

#endif 	/* __NurbsSurfaces_FWD_DEFINED__ */


#ifndef __NurbsSurface_FWD_DEFINED__
#define __NurbsSurface_FWD_DEFINED__

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

#endif 	/* __NurbsSurface_FWD_DEFINED__ */


#ifndef __PropertyLibExplorer_FWD_DEFINED__
#define __PropertyLibExplorer_FWD_DEFINED__

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

#endif 	/* __PropertyLibExplorer_FWD_DEFINED__ */


#ifndef __ExternalGDIObject_FWD_DEFINED__
#define __ExternalGDIObject_FWD_DEFINED__

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

#endif 	/* __ExternalGDIObject_FWD_DEFINED__ */


#ifndef __Circles_FWD_DEFINED__
#define __Circles_FWD_DEFINED__

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

#endif 	/* __Circles_FWD_DEFINED__ */


#ifndef ___Circle_FWD_DEFINED__
#define ___Circle_FWD_DEFINED__

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

#endif 	/* ___Circle_FWD_DEFINED__ */


#ifndef __MacroObjects_FWD_DEFINED__
#define __MacroObjects_FWD_DEFINED__

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

#endif 	/* __MacroObjects_FWD_DEFINED__ */


#ifndef __MacroObject_FWD_DEFINED__
#define __MacroObject_FWD_DEFINED__

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

#endif 	/* __MacroObject_FWD_DEFINED__ */


#ifndef __Ellipses_FWD_DEFINED__
#define __Ellipses_FWD_DEFINED__

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

#endif 	/* __Ellipses_FWD_DEFINED__ */


#ifndef ___Ellipse_FWD_DEFINED__
#define ___Ellipse_FWD_DEFINED__

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

#endif 	/* ___Ellipse_FWD_DEFINED__ */


#ifndef __EllipseArcs_FWD_DEFINED__
#define __EllipseArcs_FWD_DEFINED__

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

#endif 	/* __EllipseArcs_FWD_DEFINED__ */


#ifndef ___EllipseArc_FWD_DEFINED__
#define ___EllipseArc_FWD_DEFINED__

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

#endif 	/* ___EllipseArc_FWD_DEFINED__ */


#ifndef ___Point_FWD_DEFINED__
#define ___Point_FWD_DEFINED__

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

#endif 	/* ___Point_FWD_DEFINED__ */


#ifndef __Points_FWD_DEFINED__
#define __Points_FWD_DEFINED__

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

#endif 	/* __Points_FWD_DEFINED__ */


#ifndef ___Line_FWD_DEFINED__
#define ___Line_FWD_DEFINED__

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

#endif 	/* ___Line_FWD_DEFINED__ */


#ifndef __Lines_FWD_DEFINED__
#define __Lines_FWD_DEFINED__

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

#endif 	/* __Lines_FWD_DEFINED__ */


#ifndef ___Bezier_FWD_DEFINED__
#define ___Bezier_FWD_DEFINED__

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

#endif 	/* ___Bezier_FWD_DEFINED__ */


#ifndef __Beziers_FWD_DEFINED__
#define __Beziers_FWD_DEFINED__

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

#endif 	/* __Beziers_FWD_DEFINED__ */


#ifndef __Rectangles_FWD_DEFINED__
#define __Rectangles_FWD_DEFINED__

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

#endif 	/* __Rectangles_FWD_DEFINED__ */


#ifndef ___Rectangle_FWD_DEFINED__
#define ___Rectangle_FWD_DEFINED__

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

#endif 	/* ___Rectangle_FWD_DEFINED__ */


#ifndef __RegularPolygons_FWD_DEFINED__
#define __RegularPolygons_FWD_DEFINED__

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

#endif 	/* __RegularPolygons_FWD_DEFINED__ */


#ifndef __RegularPolygon_FWD_DEFINED__
#define __RegularPolygon_FWD_DEFINED__

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

#endif 	/* __RegularPolygon_FWD_DEFINED__ */


#ifndef __InsertionObjects_FWD_DEFINED__
#define __InsertionObjects_FWD_DEFINED__

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

#endif 	/* __InsertionObjects_FWD_DEFINED__ */


#ifndef __InsertionView_FWD_DEFINED__
#define __InsertionView_FWD_DEFINED__

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

#endif 	/* __InsertionView_FWD_DEFINED__ */


#ifndef __InsertionDefinition_FWD_DEFINED__
#define __InsertionDefinition_FWD_DEFINED__

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

#endif 	/* __InsertionDefinition_FWD_DEFINED__ */


#ifndef __PolyLine2D_FWD_DEFINED__
#define __PolyLine2D_FWD_DEFINED__

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

#endif 	/* __PolyLine2D_FWD_DEFINED__ */


#ifndef __PolyLines2D_FWD_DEFINED__
#define __PolyLines2D_FWD_DEFINED__

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

#endif 	/* __PolyLines2D_FWD_DEFINED__ */


#ifndef __Equidistants_FWD_DEFINED__
#define __Equidistants_FWD_DEFINED__

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

#endif 	/* __Equidistants_FWD_DEFINED__ */


#ifndef ___Equidistant_FWD_DEFINED__
#define ___Equidistant_FWD_DEFINED__

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

#endif 	/* ___Equidistant_FWD_DEFINED__ */


#ifndef ___Nurbs_FWD_DEFINED__
#define ___Nurbs_FWD_DEFINED__

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

#endif 	/* ___Nurbs_FWD_DEFINED__ */


#ifndef __Nurbses_FWD_DEFINED__
#define __Nurbses_FWD_DEFINED__

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

#endif 	/* __Nurbses_FWD_DEFINED__ */


#ifndef __CentreMarkers_FWD_DEFINED__
#define __CentreMarkers_FWD_DEFINED__

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

#endif 	/* __CentreMarkers_FWD_DEFINED__ */


#ifndef __CentreMarker_FWD_DEFINED__
#define __CentreMarker_FWD_DEFINED__

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

#endif 	/* __CentreMarker_FWD_DEFINED__ */


#ifndef __RemoteElement_FWD_DEFINED__
#define __RemoteElement_FWD_DEFINED__

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

#endif 	/* __RemoteElement_FWD_DEFINED__ */


#ifndef __RemoteElements_FWD_DEFINED__
#define __RemoteElements_FWD_DEFINED__

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

#endif 	/* __RemoteElements_FWD_DEFINED__ */


#ifndef ___Attribute_FWD_DEFINED__
#define ___Attribute_FWD_DEFINED__

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

#endif 	/* ___Attribute_FWD_DEFINED__ */


#ifndef ___ColumnInfo_FWD_DEFINED__
#define ___ColumnInfo_FWD_DEFINED__

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

#endif 	/* ___ColumnInfo_FWD_DEFINED__ */


#ifndef ___AttributeType_FWD_DEFINED__
#define ___AttributeType_FWD_DEFINED__

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

#endif 	/* ___AttributeType_FWD_DEFINED__ */


#ifndef __AxisLine_FWD_DEFINED__
#define __AxisLine_FWD_DEFINED__

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

#endif 	/* __AxisLine_FWD_DEFINED__ */


#ifndef __AxisLines_FWD_DEFINED__
#define __AxisLines_FWD_DEFINED__

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

#endif 	/* __AxisLines_FWD_DEFINED__ */


#ifndef __Variable7_FWD_DEFINED__
#define __Variable7_FWD_DEFINED__

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

#endif 	/* __Variable7_FWD_DEFINED__ */


#ifndef __InsertionParameters_FWD_DEFINED__
#define __InsertionParameters_FWD_DEFINED__

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

#endif 	/* __InsertionParameters_FWD_DEFINED__ */


#ifndef __DrawingGroup_FWD_DEFINED__
#define __DrawingGroup_FWD_DEFINED__

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

#endif 	/* __DrawingGroup_FWD_DEFINED__ */


#ifndef __DrawingGroups_FWD_DEFINED__
#define __DrawingGroups_FWD_DEFINED__

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

#endif 	/* __DrawingGroups_FWD_DEFINED__ */


#ifndef ___Hatch_FWD_DEFINED__
#define ___Hatch_FWD_DEFINED__

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

#endif 	/* ___Hatch_FWD_DEFINED__ */


#ifndef ___Colouring_FWD_DEFINED__
#define ___Colouring_FWD_DEFINED__

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

#endif 	/* ___Colouring_FWD_DEFINED__ */


#ifndef __Hatches_FWD_DEFINED__
#define __Hatches_FWD_DEFINED__

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

#endif 	/* __Hatches_FWD_DEFINED__ */


#ifndef __Colourings_FWD_DEFINED__
#define __Colourings_FWD_DEFINED__

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

#endif 	/* __Colourings_FWD_DEFINED__ */


#ifndef ___SpecRough_FWD_DEFINED__
#define ___SpecRough_FWD_DEFINED__

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

#endif 	/* ___SpecRough_FWD_DEFINED__ */


#ifndef __TechnicalDemand_FWD_DEFINED__
#define __TechnicalDemand_FWD_DEFINED__

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

#endif 	/* __TechnicalDemand_FWD_DEFINED__ */


#ifndef ___Raster_FWD_DEFINED__
#define ___Raster_FWD_DEFINED__

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

#endif 	/* ___Raster_FWD_DEFINED__ */


#ifndef __Rasters_FWD_DEFINED__
#define __Rasters_FWD_DEFINED__

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

#endif 	/* __Rasters_FWD_DEFINED__ */


#ifndef __OleDrawingObject_FWD_DEFINED__
#define __OleDrawingObject_FWD_DEFINED__

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

#endif 	/* __OleDrawingObject_FWD_DEFINED__ */


#ifndef __OleDrawingObjects_FWD_DEFINED__
#define __OleDrawingObjects_FWD_DEFINED__

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

#endif 	/* __OleDrawingObjects_FWD_DEFINED__ */


#ifndef __SelectionManager_FWD_DEFINED__
#define __SelectionManager_FWD_DEFINED__

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

#endif 	/* __SelectionManager_FWD_DEFINED__ */


#ifndef __ChooseManager_FWD_DEFINED__
#define __ChooseManager_FWD_DEFINED__

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

#endif 	/* __ChooseManager_FWD_DEFINED__ */


#ifndef __SurfacesIntersectionCurve_FWD_DEFINED__
#define __SurfacesIntersectionCurve_FWD_DEFINED__

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

#endif 	/* __SurfacesIntersectionCurve_FWD_DEFINED__ */


#ifndef __SurfacesIntersectionCurves_FWD_DEFINED__
#define __SurfacesIntersectionCurves_FWD_DEFINED__

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

#endif 	/* __SurfacesIntersectionCurves_FWD_DEFINED__ */


#ifndef __IModelCurve3D_FWD_DEFINED__
#define __IModelCurve3D_FWD_DEFINED__
typedef interface IModelCurve3D IModelCurve3D;
#endif 	/* __IModelCurve3D_FWD_DEFINED__ */


#ifndef ___Stamp_FWD_DEFINED__
#define ___Stamp_FWD_DEFINED__

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

#endif 	/* ___Stamp_FWD_DEFINED__ */


#ifndef __WaveLine_FWD_DEFINED__
#define __WaveLine_FWD_DEFINED__

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

#endif 	/* __WaveLine_FWD_DEFINED__ */


#ifndef __WaveLines_FWD_DEFINED__
#define __WaveLines_FWD_DEFINED__

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

#endif 	/* __WaveLines_FWD_DEFINED__ */


#ifndef __BrokenLine_FWD_DEFINED__
#define __BrokenLine_FWD_DEFINED__

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

#endif 	/* __BrokenLine_FWD_DEFINED__ */


#ifndef __BrokenLines_FWD_DEFINED__
#define __BrokenLines_FWD_DEFINED__

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

#endif 	/* __BrokenLines_FWD_DEFINED__ */


#ifndef __IPropertyStyleList_FWD_DEFINED__
#define __IPropertyStyleList_FWD_DEFINED__
typedef interface IPropertyStyleList IPropertyStyleList;
#endif 	/* __IPropertyStyleList_FWD_DEFINED__ */


#ifndef __PropertyStyleList_FWD_DEFINED__
#define __PropertyStyleList_FWD_DEFINED__

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

#endif 	/* __PropertyStyleList_FWD_DEFINED__ */


#ifndef ___CopyObjectParam_FWD_DEFINED__
#define ___CopyObjectParam_FWD_DEFINED__

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

#endif 	/* ___CopyObjectParam_FWD_DEFINED__ */


#ifndef __CurveCopyObjectParam_FWD_DEFINED__
#define __CurveCopyObjectParam_FWD_DEFINED__

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

#endif 	/* __CurveCopyObjectParam_FWD_DEFINED__ */


#ifndef __CircleCopyObjectParam_FWD_DEFINED__
#define __CircleCopyObjectParam_FWD_DEFINED__

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

#endif 	/* __CircleCopyObjectParam_FWD_DEFINED__ */


#ifndef __ICircularCopyObjectParam_FWD_DEFINED__
#define __ICircularCopyObjectParam_FWD_DEFINED__
typedef interface ICircularCopyObjectParam ICircularCopyObjectParam;
#endif 	/* __ICircularCopyObjectParam_FWD_DEFINED__ */


#ifndef __CircularCopyObjectParam_FWD_DEFINED__
#define __CircularCopyObjectParam_FWD_DEFINED__

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

#endif 	/* __CircularCopyObjectParam_FWD_DEFINED__ */


#ifndef __IMeshCopyObjectParam_FWD_DEFINED__
#define __IMeshCopyObjectParam_FWD_DEFINED__
typedef interface IMeshCopyObjectParam IMeshCopyObjectParam;
#endif 	/* __IMeshCopyObjectParam_FWD_DEFINED__ */


#ifndef __MeshCopyObjectParam_FWD_DEFINED__
#define __MeshCopyObjectParam_FWD_DEFINED__

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

#endif 	/* __MeshCopyObjectParam_FWD_DEFINED__ */


#ifndef __PrintJob_FWD_DEFINED__
#define __PrintJob_FWD_DEFINED__

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

#endif 	/* __PrintJob_FWD_DEFINED__ */


#ifndef __PrintJob_Sheet_FWD_DEFINED__
#define __PrintJob_Sheet_FWD_DEFINED__

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

#endif 	/* __PrintJob_Sheet_FWD_DEFINED__ */


#ifndef ___Property_FWD_DEFINED__
#define ___Property_FWD_DEFINED__

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

#endif 	/* ___Property_FWD_DEFINED__ */


#ifndef __LibArraySettings_FWD_DEFINED__
#define __LibArraySettings_FWD_DEFINED__

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

#endif 	/* __LibArraySettings_FWD_DEFINED__ */


#ifndef __ReportProcess_FWD_DEFINED__
#define __ReportProcess_FWD_DEFINED__

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

#endif 	/* __ReportProcess_FWD_DEFINED__ */


#ifndef __Equidistants3D_FWD_DEFINED__
#define __Equidistants3D_FWD_DEFINED__

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

#endif 	/* __Equidistants3D_FWD_DEFINED__ */


#ifndef __Equidistant3D_FWD_DEFINED__
#define __Equidistant3D_FWD_DEFINED__

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

#endif 	/* __Equidistant3D_FWD_DEFINED__ */


void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 


#ifndef __KompasAPI7_LIBRARY_DEFINED__
#define __KompasAPI7_LIBRARY_DEFINED__

/* library KompasAPI7 */
/* [helpfile][version][uuid] */ 













































































































































































































































































































































































































//-------------------------------------------------------------------------------
// 
// ---
//-------------------------------------------------------------------------------
//  
// ---
//   IKompasAPIObject        -    API
//   IKompasCollection       -    API
//   IKompasDocument         -    
//   IKompasDocument2D       -   2D  
//   IKompasDocument3D       -    3D 
//   IDrawingObject          -      .
//   IDrawingObjects         -     .
//   IVariableTable          -   .
//   IKompasDocument1        -   IKompasDocument.
//   IKompasDocument2D1      -    IKompasDocument2D.
//   IDrawingObject1         -     .
//
//
//-------------------------------------------------------------------------------
//  
// ---
//   IApplication           -  -   API
//   IDocuments             -  ,   
//   IDocumentFrame         -   
//   IDocumentFrames        -   
//   IDrawingDocument       -  
//   IFragmentDocument      -  
//   ISpecificationDocument -   
//   ITextDocument          -    
//   IPartDocument          -  
//   IAssemblyDocument      -  
//   ISheetFormat           -  
//   IKompasError           -     
//   ILayoutSheets          -   
//   ILayoutSheet           -   
//   ICheckSum              -   .
//   IProgressBarIndicator  -   .
//   IUserDataStoragesMng   -    .
//   IUserDataStorages      -     .
//   IUserDataStorage       -     .
//   IParametriticConstraint-   .
//	  IDimensionText         -  .
//	  IDimensionParams       -   .
//	  ILoadCombination       -     .
//	  IAttribute             - .
//	  IColumnInfo            -    .
//	  IAttributeType         -   .
//	  IAttrTypeMng           -   .
//	  IVariable7             -   .
//	  IMath2D                -   2D.
//	  ISelectionManager      -  .
//	  IChooseManager         -   () .
//	  IStamp                 - .
//	  IPrintJob              -   .
//	  IProperty              - .
//	  IPropertyMng;          -  .
//	  IPropertyKeeper;       -  /  .
//	  IReportProcess;        -      .
//	  IReportFilter;         -        .
//
//
//-------------------------------------------------------------------------------
//     
// ---
//   IProcessParam        -   
//   IPropertyTabs        -    
//   IPropertyTab         -   
//   IPropertyControl     -     
//	  IPropertyControl1    -      .
//   IPropertyControls    -  
//   IPropertyEdit        -    - 
//   IPropertySeparator   -    -  ()
//   IPropertyList        -    - 
//   IPropertyCheckBox    -    - 
//   IPropertyMultiButton -    -  
//   IPropertySlideBox    -    -   , ,     
//   IPropertyUserControl -    -   
//   IPropertyGrid        -    - 
//   IPaintObject         -     
//   IGabaritObject       -      
//   ksGLObject           -        OpenGL
//   IPropertyManager     -   
//   IPropertyTextButton  -    -   
//   IPropertySpinEdit    -    -  c 
//   IPropertyFileName    -    -  
//   IPropertyColor       -    -  
//   IPropertyEditList    -    - .
//   IPropertyToolBar     -     -   .
//	  IPropertyBmpList     -    -     .
//	  IProcessInfoWindow   -  '  '.
//	  IPropertyLibExplorer -   .
//
//
//-------------------------------------------------------------------------------
//    
// ---
//   IViewsAndLayersManager -     2D 
//   IViews                 -  
//   IView                  - 
//   IAssociationView       -  
//   ILayerGroups           -   
//   ILayerGroup            -  
//   ILayers                -  
//   ILayer                 - 
//   ILayerFilterCondition  -   
//   ILayerFilterConditions -     
//	  IViewDesignation       -  .
//	  IAssociationViewElements -        .
//	  IBreakViewParam          -   .
//	  ICutViewParam            -   .
//-------------------------------------------------------------------------------
//  
// ---
//   ILibraryManager        -  
//   ILibrary               -      
//   IProceduresLibrary     -   .
//   IProcedures            -     .
//   IProcedure             -    .
//   IInsertsLibrary        -  () .
//   IInserts               -  () .
//   IInsert                - ()  ().
//   IInsertsLibraries      -   () .
//   IProceduresLibraries   -    .
//-------------------------------------------------------------------------------
// 
// ---
//   IDocumentSettings         -  
//   IDocument2DSettings       -  2D 
//   IDrawingDocumentSettings  -  
//   IFragmentDocumentSettings -  
//   ISystemSettings           -  
//   ILibArraySettings;        -       
//
//
//-------------------------------------------------------------------------------
// 
// ---
//   ISpecificationDescriptions     -   .
//   ISpecificationDescription      -  .
//   ISpecificationStyle            -  .
//   ISpecificationColumnStyles     -    .
//   ISpecificationColumnStyle      -   .
//   ISpecificationSectionStyles    -    .
//   ISpecificationSectionStyle     -   .
//   IAdditionalBlockStyles         -     .
//   IAdditionalBlockStyle          -    .
//   ISpecificationTuning           -  .
//   ISpecificationTuningSections   -    .
//   ISpecificationTuningSection    -   .
//   ISpecificationSubsections      -   .
//   ISpecificationSubsection       -  .
//   IAdditionalBlockTunings        -     .
//   IAdditionalBlockTuning         -    .
//   IAdditionalBlockSectionTunings -      .
//   IAdditionalBlockSectionTuning  -     .
//   ISpecificationBaseObjects      -    .
//   ISpecificationCommentObjects   -    .
//   ISpecificationObject           -  .
//   ISpecificationBaseObject       -   .
//   ISpecificationCommentObject    -   .
//   ISpecificationColumns          -    .
//   ISpecificationColumn           -   .
//   ISpecificationColumnItems      -     .
//   ISpecificationColumnItem       -    .
//   IAttachedDocuments             -      .
//   IAttachedDocument              -      .
//
//
//-------------------------------------------------------------------------------
// 
// ---
//  ITextStyle          -   .
//  ITextFont           -  .
//  ITabulators         -   .
//  ITabulator          -  .
//  IText               -       .
//  ITextLine           -   .
//  ITextItem           -    .
//  IDrawingText        -      .
//  IDrawingTexts       -     .
//  IInsertionParameters-        .
//
//
//-------------------------------------------------------------------------------
// 
// ---
//  ITable             -  .
//  ITableCell         -  .
//  ITableRange        -       .
//  ICellFormat        -  .
//  ICellBoundaries    -  .
//  IDrawingTable      -   .
//  IDrawingTables     -    .
//
//
//-------------------------------------------------------------------------------
//  -   
// ---
//   IConverter         -   .
//
//
//-------------------------------------------------------------------------------
// 
// ---
//   ksPropertyManagerNotify          - C  .
//   ksPropertyUserControlNotify      - C   .
//   ksDocumentFrameNotify            - C   .
//   ksDrawingObjectNotify            - Cz   2D .
//   ksViewsAndLayersManagerNotify    -     .
//   ksLibraryManagerNotify           - C  .
//   ksSpecificationDescriptionNotify -    .
//   ksSpecificationObjectNotify      -    .
//   ksLayoutSheetsNotify             -    .
//   ksDocument3DNotify7              -   3D .
//   ksModelObjectNotify              -    3D 
//	  IModelObjectNotifyResult         -    3d  (   IPart7).
//	  IKompasDocument3DNotifyResult    -     3D .
//
//
///////////////////////////////////////////////////////////////////////////////////////////////
//
//  3D
//
///////////////////////////////////////////////////////////////////////////////////////////////
//   IModelObject					-  3D 
//   IModelObjects					-     3D 
//   IFeature7							-   ,   
//   IPart7 								-  3D 
//   IParts7 							-   3D .
//   IModelContainer 			-    3D.
// 	ISketchs							-    ''.
// 	IExtrusions						-    .
//   ISketch								-  ''
//   IMassInertiaParam7		-  
//   IExtrusion						-   
//   IThinParameters				-    
//   ICutExtrusion					-   ' '
//   IChooseBodies7				-        
//   IBody7								-   
//   ISheetMetalBodies			-    ' '
//   ISheetMetalBody				-   
//   ISheetMetalContainer	-    
//   IPoints3D				        -    ' '
//   IPoint3D				        -   
//   IPoint3DParamDisplace   -          
//   IPoint3DParamIntersect  -         
//   IPoint3DParamCenter     -         
//   IPoint3DParamCurve      -         
//   IPoint3DParamSurface    -       
//   IPoint3DParamProjection -      
//   ISheetMetalBends        -    ''
//   ISheetMetalBend         -  a 'c'
//   ISheetMetalLineBends    -    'c  '
//   ISheetMetalLineBend     -  a 'c  '
//   ISourcePart7Params      -    
//   ISheetMetalHole         -     ''
//   ISheetMetalHoles        -    ''
//   ISheetMetalCut          -     ''
//   ISheetMetalCuts         -    ''
//   ISymbols3DContainer     -    3D.
//   ILineDimensions3D       -    3D.
//   IBaseLineDimension3D    -    3D (   ).
//   ILineDimension3D        -    3D ( ).
//   IRadialDimension3D      -   3D.
//   IDiametralDimension3D   -   3D.
//   IRadialDimensions3D     -    3D.
//   IDiametralDimensions3D  -    3D.
//   IAngleDimension3D       -   3D.
//   IAngleDimensions3D      -    3D.
//   ISplines3D              -   ''.
//   ISpline3D               -  c.
//   ILocalCoordinateSystem  -  .
//   ILocalCoordinateSystems -   . 
//   IAuxiliaryGeomContainer -     .
//   ILocalCSAxesDirectionParam -       - ' '
//   ILocalCSEulerParam      -       - '  '
//   ICurveVertexParam       -    .
//   IPolyLine               -  3D .
//   IPolyLines              -   3D .
//   IRough3D                -   3D . 
//   IRoughs3D;              -   3D  . 
//	  IRoughParams            -   .
//	  IBranchs3D 				      -     .
//   IBaseLeader3D           -  .  .
//   ILeaders3D              -    3D.
//   IBases3D                -   3D .
//   IBase3D                 -   3D .
//   ITolerances3D           -    3D.
//   ITolerance3D            -   3D.
//   ILocalCSOrientByObjectParam -       - '  '.
//   IControlPoints          -    ' '.
//   IControlPoint           -   .
//   IConjunctivePoints      -    ' '.
//   IConjunctivePoint       -   .
//   ILocalCSObject          -    .
//   ISplitLines             -   .
//   ISplitLine              -   .
//   ISurfaceContainer       -   .
//   ISurfacePatches         -  .
//   ISurfacePatch           -  .
//   IFaceRemovers           -    .
//   IFaceRemover            -    .
//   ISurfaceSewers          -    .
//   ISurfaceSewer           -    .
//   INurbsSurfaces          -  NURBS-.
//   INurbsSurface           -  NURBS-.
//   IColorParam7            -   .
//   ISurfacesIntersectionCurve  -    .
//   ISurfacesIntersectionCurves -    .
//   IModelCurve             - - 3D.
//   IEquidistants3D         -  3D.
//   IEquidistant3D          - 3D.
//
//
///////////////////////////////////////////////////////////////////////////////////////////////
//
//  2D
//
///////////////////////////////////////////////////////////////////////////////////////////////
//  IDrawingContainer -    2D
//  IMark             -  -  ()      - .
//  IMarks            -  .
//  IMarkInsideForm   -     ( -).
//  IMarkOnLine       -     ( ).
//  IMarkOnLeader     -     ( -).
//  IBuildingAxis     - C .
//  IBuildingAxes 	   -   .
//  IStraightAxis     -  .
//  IArcAxis          -  .
//  ICircleAxis       -  .
//  IAxisJut          -  .
//  IMarkNode         -     .
//  IMarkNodes	       - 	   .
//  ILineSegments     -   
//  ILineSegment      - 
//  ICutUnitMarking   -    
//  ICutUnitMarkings  -     .
//  IBuildingContainer-   
//  IArcs             -   
//  IArc              - 
//  IMultiTextLeader  -     
//  IMultiTextLeaders -      
//  IUnitMarking      -  
//  IUnitMarkings     -   
//  IBrace            -  
//  IBraces           -   
//  IUnitNumber       -  
//  IUnitNumbers      -   
//  ISymbols2DContainer     -    2D.
//  IRadialDimension        -  .
//  IRadialDimensions;      -   .
//  IBreakRadialDimension   -    .
//  IBreakRadialDimensions  -     .
//  IDiametralDimension     -  .
//  IDiametralDimensions    -   .
//  ILineDimension          -  .
//  ILineDimensions         -   .
//  IBreakRadialDimension   -    .
//  IBreakRadialDimensions  -     .
//  IDiametralDimension     -  .
//  IDiametralDimensions    -   .
//  IBreakLineDimension     -    .
//  IBreakLineDimensions    -     .
//  IHeightDimension        -    .
//  IHeightDimensions       -     .
//  IAngleDimension         -  .
//  IAngleDimensions        -   .
//  IBreakAngleDimension    -    .
//  IArcDimension           -   .
//  IArcDimensions          -    .
//  IBranchs                -       2D.
//  IBaseLeader             -  .  .
//  ILeader                 -    .
//  ILeaders                -   .
//  IMarkLeader             -  .
//  IPositionLeader         -     .
//  IChangeLeader           -   .
//  IBrandLeader            -  .
//  IRoughs                 -   .
//  IRough                  -   .
//  IBase                   -   .
//  IBases                  -    .
//  ITolerances             -   .
//  ITolerance              -  .
//  IToleranceParam         -   .
//  ICutLine                -   /.
//  ICutLines               -    /.
//  IViewPointer            - C .
//  IViewPointers           -   .
//  IMultiline              -  .
//  IMultilines             -  .
//  IContour                -  .
//  IContourSegment         -   .
//  IContourLineSegment     -    - .
//  IContourArc             -    - .
//  ICurve2D                -   2D.
//  IDrawingContour         -  .
//  IDrawingContours        -  .
//  ICircles                -   
//  ICircle                 - 
//  IEllipses               -  
//  IEllipse                - 
//  IEllipseArcs            -   
//  IEllipseArc             -  
//  IPoint                  - 2D 
//  IPoints                 -  2D 
//  ILine                   - 
//  ILines                  -  
//  IBezier;                -   
//  IBeziers;               -    
//  IRectangles             -  
//  IRectangle              - 
//  IRegularPolygons        -  
//  IRegularPolygon         - 
//  IInsertionObject        -         
//  IInsertionObjects       -       
//  IInsertionFragment      -  
//  IInsertionView          -     
//  IInsertionDefinition    -        
//  IInsertionsManager      -      
//  IPolyLine2D             -  2D- .
//  IPolyLines2D            -   2D- .
//  IEquidistants           -  .
//  IEquidistant            - .
//  INurbs;                 - NURBS-.
//  INurbses;               -  NURBS-.
//  ICentreMarkers          -   .
//  ICentreMarker           -  .
//  IAxisLineParam          -    (  ).
//  IRemoteElement          -  .
//  IRemoteElements         -   .
//  IAxisLine               -  .
//  IAxisLines              -   .
//  IHatchParam             -  .
//  IDrawingGroup           -  (, , ).
//  IDrawingGroups          -   (,  (  )).
//  IBoundariesObject       -   .
//  IHatch                  - .
//  IColouring              - .
//  IHatches                -   .
//  IColourings             -   .
//  ISpecRough							 -  .
//  ITechnicalDemand        -  .
//  IRaster                 -  .
//  IRasters                -   .
//  IOleDrawingObject       - OLE-.
//  IOleDrawingObjects      -  OLE-.
//  IAnnotativeObject       -  .
//  IAnnotativeContainer    -   .
//  IWaveLine               -  .
//  IWaveLines              -   .
//  IBrokenLine             -    .
//  IBrokenLines            -     .
//  ICopyObjectParam        -   .
//  ICurveCopyObjectParam   -     .
//  ICircleCopyObjectParam  -     .
//-------------------------------------------------------------------------------
// _1370000_   . 
// ---
//-------------------------------------------------------------------------------
// _1380000_    . 
// ---
//-------------------------------------------------------------------------------
// _1390000_ IUserDataStorage -    . 
// ---

DEFINE_GUID(LIBID_KompasAPI7,0x69AC2981,0x37C0,0x4379,0x84,0xFD,0x5D,0xD2,0xF3,0xC0,0xA5,0x20);

#ifndef __IKompasAPIObject_INTERFACE_DEFINED__
#define __IKompasAPIObject_INTERFACE_DEFINED__

/* interface IKompasAPIObject */
/* [object][helpcontext][helpstring][hidden][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IKompasAPIObject,0x5C799A83,0xC0A4,0x4312,0xBE,0xB0,0x21,0xCB,0xD7,0xFF,0x4C,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5C799A83-C0A4-4312-BEB0-21CBD7FF4C13")
    IKompasAPIObject : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Parent( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Application( 
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Reference( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasAPIObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasAPIObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasAPIObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IKompasAPIObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IKompasAPIObjectVtbl;

    interface IKompasAPIObject
    {
        CONST_VTBL struct IKompasAPIObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasAPIObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IKompasAPIObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IKompasAPIObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IKompasAPIObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasAPIObject_get_Parent_Proxy( 
    IKompasAPIObject __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasAPIObject_get_Parent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasAPIObject_get_Application_Proxy( 
    IKompasAPIObject __RPC_FAR * This,
    /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasAPIObject_get_Application_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasAPIObject_get_Type_Proxy( 
    IKompasAPIObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);


void __RPC_STUB IKompasAPIObject_get_Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasAPIObject_get_Reference_Proxy( 
    IKompasAPIObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IKompasAPIObject_get_Reference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasAPIObject_INTERFACE_DEFINED__ */


#ifndef __IKompasCollection_INTERFACE_DEFINED__
#define __IKompasCollection_INTERFACE_DEFINED__

/* interface IKompasCollection */
/* [object][helpcontext][helpstring][hidden][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IKompasCollection,0x901F85DE,0xFA5A,0x4314,0xBD,0x75,0x06,0x6A,0x79,0xAF,0x20,0xA8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("901F85DE-FA5A-4314-BD75-066A79AF20A8")
    IKompasCollection : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasCollectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasCollection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasCollection __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasCollection __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasCollection __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasCollection __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasCollection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasCollection __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IKompasCollection __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IKompasCollection __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IKompasCollection __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IKompasCollection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IKompasCollection __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IKompasCollection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IKompasCollectionVtbl;

    interface IKompasCollection
    {
        CONST_VTBL struct IKompasCollectionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasCollection_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IKompasCollection_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IKompasCollection_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IKompasCollection_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IKompasCollection_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IKompasCollection_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasCollection_get__NewEnum_Proxy( 
    IKompasCollection __RPC_FAR * This,
    /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);


void __RPC_STUB IKompasCollection_get__NewEnum_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasCollection_get_Count_Proxy( 
    IKompasCollection __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IKompasCollection_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasCollection_INTERFACE_DEFINED__ */


#ifndef __IKompasDocument_INTERFACE_DEFINED__
#define __IKompasDocument_INTERFACE_DEFINED__

/* interface IKompasDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IKompasDocument,0x5C6E318D,0xBD6E,0x4afa,0x8A,0x13,0x97,0x7E,0xAA,0x08,0x45,0xEF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5C6E318D-BD6E-4afa-8A13-977EAA0845EF")
    IKompasDocument : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentType( 
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentFrames( 
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Close( 
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Save( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveAs( 
            /* [in] */ BSTR PathName) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PathName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Active( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Changed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentSettings( 
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecificationDescriptions( 
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutSheets( 
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UserDataStoragesMng( 
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IKompasDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IKompasDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IKompasDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IKompasDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IKompasDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IKompasDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IKompasDocumentVtbl;

    interface IKompasDocument
    {
        CONST_VTBL struct IKompasDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IKompasDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IKompasDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IKompasDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IKompasDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IKompasDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IKompasDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IKompasDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IKompasDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IKompasDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IKompasDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IKompasDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IKompasDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IKompasDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IKompasDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IKompasDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IKompasDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IKompasDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IKompasDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IKompasDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IKompasDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IKompasDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_DocumentType_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);


void __RPC_STUB IKompasDocument_get_DocumentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_DocumentFrames_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);


void __RPC_STUB IKompasDocument_get_DocumentFrames_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument_Close_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IKompasDocument_Close_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument_Save_Proxy( 
    IKompasDocument __RPC_FAR * This);


void __RPC_STUB IKompasDocument_Save_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument_SaveAs_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [in] */ BSTR PathName);


void __RPC_STUB IKompasDocument_SaveAs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_Name_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_PathName_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_PathName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_Path_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_Visible_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_Active_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument_put_Active_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IKompasDocument_put_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_ReadOnly_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument_put_ReadOnly_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IKompasDocument_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_Changed_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_Changed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_DocumentSettings_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_DocumentSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_SpecificationDescriptions_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_SpecificationDescriptions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_LayoutSheets_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_LayoutSheets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument_get_UserDataStoragesMng_Proxy( 
    IKompasDocument __RPC_FAR * This,
    /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument_get_UserDataStoragesMng_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasDocument_INTERFACE_DEFINED__ */


#ifndef __IKompasDocument2D_INTERFACE_DEFINED__
#define __IKompasDocument2D_INTERFACE_DEFINED__

/* interface IKompasDocument2D */
/* [helpcontext][helpstring][hidden][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IKompasDocument2D,0x096E62B3,0x7184,0x4998,0x99,0x25,0x74,0xBB,0x71,0x0D,0x8D,0x8E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("096E62B3-7184-4998-9925-74BB710D8D8E")
    IKompasDocument2D : public IKompasDocument
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewsAndLayersManager( 
            /* [retval][out] */ IViewsAndLayersManager __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDrawingObjectNotifyResult( 
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasDocument2DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasDocument2D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasDocument2D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IKompasDocument2D __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewsAndLayersManager )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IViewsAndLayersManager __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDrawingObjectNotifyResult )( 
            IKompasDocument2D __RPC_FAR * This,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IKompasDocument2DVtbl;

    interface IKompasDocument2D
    {
        CONST_VTBL struct IKompasDocument2DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasDocument2D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IKompasDocument2D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IKompasDocument2D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IKompasDocument2D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IKompasDocument2D_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IKompasDocument2D_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IKompasDocument2D_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IKompasDocument2D_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IKompasDocument2D_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IKompasDocument2D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IKompasDocument2D_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IKompasDocument2D_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IKompasDocument2D_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IKompasDocument2D_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IKompasDocument2D_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IKompasDocument2D_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IKompasDocument2D_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IKompasDocument2D_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IKompasDocument2D_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IKompasDocument2D_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IKompasDocument2D_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IKompasDocument2D_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define IKompasDocument2D_get_ViewsAndLayersManager(This,Result)	\
    (This)->lpVtbl -> get_ViewsAndLayersManager(This,Result)

#define IKompasDocument2D_GetDrawingObjectNotifyResult(This,Result)	\
    (This)->lpVtbl -> GetDrawingObjectNotifyResult(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D_get_ViewsAndLayersManager_Proxy( 
    IKompasDocument2D __RPC_FAR * This,
    /* [retval][out] */ IViewsAndLayersManager __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D_get_ViewsAndLayersManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D_GetDrawingObjectNotifyResult_Proxy( 
    IKompasDocument2D __RPC_FAR * This,
    /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D_GetDrawingObjectNotifyResult_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasDocument2D_INTERFACE_DEFINED__ */


#ifndef __IKompasDocument3D_INTERFACE_DEFINED__
#define __IKompasDocument3D_INTERFACE_DEFINED__

/* interface IKompasDocument3D */
/* [helpcontext][helpstring][hidden][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IKompasDocument3D,0x7B60E769,0x06C3,0x4fdc,0x96,0x77,0x7B,0x5E,0xF5,0x18,0x03,0x08);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7B60E769-06C3-4fdc-9677-7B5EF5180308")
    IKompasDocument3D : public IKompasDocument
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TopPart( 
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllPlanes( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllPlanes( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllAxis( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllAxis( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllSketches( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllSketches( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllPlaces( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllPlaces( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllSurfaces( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllSurfaces( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllThreads( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllThreads( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllCurves( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllCurves( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllControlPoints( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllControlPoints( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Perspective( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Perspective( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawMode( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawMode( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShadedWireframe( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShadedWireframe( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreateObjectsInCurrentLocalCS( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreateObjectsInCurrentLocalCS( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllDimensions( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllDimensions( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllDesignations( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllDesignations( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideAllAuxiliaryGeom( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideAllAuxiliaryGeom( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideInComponentsMode( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideInComponentsMode( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SelectionManager( 
            /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ChooseManager( 
            /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateAttrEx( 
            /* [in] */ double AttrID,
            /* [in] */ BSTR Libname,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributesEx( 
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasDocument3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasDocument3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasDocument3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IKompasDocument3D __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TopPart )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllPlanes )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllPlanes )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllAxis )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllAxis )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllSketches )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllSketches )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllPlaces )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllPlaces )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllSurfaces )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllSurfaces )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllThreads )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllThreads )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllCurves )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllCurves )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllControlPoints )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllControlPoints )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Perspective )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Perspective )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawMode )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawMode )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShadedWireframe )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShadedWireframe )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CreateObjectsInCurrentLocalCS )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CreateObjectsInCurrentLocalCS )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllDimensions )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllDimensions )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllDesignations )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllDesignations )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllAuxiliaryGeom )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllAuxiliaryGeom )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideInComponentsMode )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideInComponentsMode )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SelectionManager )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChooseManager )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAttrEx )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ double AttrID,
            /* [in] */ BSTR Libname,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributesEx )( 
            IKompasDocument3D __RPC_FAR * This,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IKompasDocument3DVtbl;

    interface IKompasDocument3D
    {
        CONST_VTBL struct IKompasDocument3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasDocument3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IKompasDocument3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IKompasDocument3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IKompasDocument3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IKompasDocument3D_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IKompasDocument3D_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IKompasDocument3D_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IKompasDocument3D_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IKompasDocument3D_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IKompasDocument3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IKompasDocument3D_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IKompasDocument3D_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IKompasDocument3D_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IKompasDocument3D_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IKompasDocument3D_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IKompasDocument3D_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IKompasDocument3D_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IKompasDocument3D_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IKompasDocument3D_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IKompasDocument3D_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IKompasDocument3D_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IKompasDocument3D_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define IKompasDocument3D_get_TopPart(This,Result)	\
    (This)->lpVtbl -> get_TopPart(This,Result)

#define IKompasDocument3D_put_HideAllPlanes(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllPlanes(This,NewVal)

#define IKompasDocument3D_get_HideAllPlanes(This,PVal)	\
    (This)->lpVtbl -> get_HideAllPlanes(This,PVal)

#define IKompasDocument3D_put_HideAllAxis(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllAxis(This,NewVal)

#define IKompasDocument3D_get_HideAllAxis(This,PVal)	\
    (This)->lpVtbl -> get_HideAllAxis(This,PVal)

#define IKompasDocument3D_put_HideAllSketches(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllSketches(This,NewVal)

#define IKompasDocument3D_get_HideAllSketches(This,PVal)	\
    (This)->lpVtbl -> get_HideAllSketches(This,PVal)

#define IKompasDocument3D_put_HideAllPlaces(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllPlaces(This,NewVal)

#define IKompasDocument3D_get_HideAllPlaces(This,PVal)	\
    (This)->lpVtbl -> get_HideAllPlaces(This,PVal)

#define IKompasDocument3D_put_HideAllSurfaces(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllSurfaces(This,NewVal)

#define IKompasDocument3D_get_HideAllSurfaces(This,PVal)	\
    (This)->lpVtbl -> get_HideAllSurfaces(This,PVal)

#define IKompasDocument3D_put_HideAllThreads(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllThreads(This,NewVal)

#define IKompasDocument3D_get_HideAllThreads(This,PVal)	\
    (This)->lpVtbl -> get_HideAllThreads(This,PVal)

#define IKompasDocument3D_put_HideAllCurves(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllCurves(This,NewVal)

#define IKompasDocument3D_get_HideAllCurves(This,PVal)	\
    (This)->lpVtbl -> get_HideAllCurves(This,PVal)

#define IKompasDocument3D_put_HideAllControlPoints(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllControlPoints(This,NewVal)

#define IKompasDocument3D_get_HideAllControlPoints(This,PVal)	\
    (This)->lpVtbl -> get_HideAllControlPoints(This,PVal)

#define IKompasDocument3D_put_Perspective(This,NewVal)	\
    (This)->lpVtbl -> put_Perspective(This,NewVal)

#define IKompasDocument3D_get_Perspective(This,PVal)	\
    (This)->lpVtbl -> get_Perspective(This,PVal)

#define IKompasDocument3D_put_DrawMode(This,NewVal)	\
    (This)->lpVtbl -> put_DrawMode(This,NewVal)

#define IKompasDocument3D_get_DrawMode(This,PVal)	\
    (This)->lpVtbl -> get_DrawMode(This,PVal)

#define IKompasDocument3D_put_ShadedWireframe(This,NewVal)	\
    (This)->lpVtbl -> put_ShadedWireframe(This,NewVal)

#define IKompasDocument3D_get_ShadedWireframe(This,PVal)	\
    (This)->lpVtbl -> get_ShadedWireframe(This,PVal)

#define IKompasDocument3D_put_CreateObjectsInCurrentLocalCS(This,NewVal)	\
    (This)->lpVtbl -> put_CreateObjectsInCurrentLocalCS(This,NewVal)

#define IKompasDocument3D_get_CreateObjectsInCurrentLocalCS(This,PVal)	\
    (This)->lpVtbl -> get_CreateObjectsInCurrentLocalCS(This,PVal)

#define IKompasDocument3D_put_HideAllDimensions(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllDimensions(This,NewVal)

#define IKompasDocument3D_get_HideAllDimensions(This,PVal)	\
    (This)->lpVtbl -> get_HideAllDimensions(This,PVal)

#define IKompasDocument3D_put_HideAllDesignations(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllDesignations(This,NewVal)

#define IKompasDocument3D_get_HideAllDesignations(This,PVal)	\
    (This)->lpVtbl -> get_HideAllDesignations(This,PVal)

#define IKompasDocument3D_put_HideAllAuxiliaryGeom(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllAuxiliaryGeom(This,NewVal)

#define IKompasDocument3D_get_HideAllAuxiliaryGeom(This,PVal)	\
    (This)->lpVtbl -> get_HideAllAuxiliaryGeom(This,PVal)

#define IKompasDocument3D_put_HideInComponentsMode(This,NewVal)	\
    (This)->lpVtbl -> put_HideInComponentsMode(This,NewVal)

#define IKompasDocument3D_get_HideInComponentsMode(This,PVal)	\
    (This)->lpVtbl -> get_HideInComponentsMode(This,PVal)

#define IKompasDocument3D_get_SelectionManager(This,PVal)	\
    (This)->lpVtbl -> get_SelectionManager(This,PVal)

#define IKompasDocument3D_get_ChooseManager(This,PVal)	\
    (This)->lpVtbl -> get_ChooseManager(This,PVal)

#define IKompasDocument3D_CreateAttrEx(This,AttrID,Libname,Objects,SourcePart,Result)	\
    (This)->lpVtbl -> CreateAttrEx(This,AttrID,Libname,Objects,SourcePart,Result)

#define IKompasDocument3D_get_AttributesEx(This,Key1,Key2,Key3,Key4,Numb,Objects,SourcePart,Result)	\
    (This)->lpVtbl -> get_AttributesEx(This,Key1,Key2,Key3,Key4,Numb,Objects,SourcePart,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_TopPart_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument3D_get_TopPart_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllPlanes_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllPlanes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllPlanes_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllPlanes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllAxis_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllAxis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllAxis_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllAxis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllSketches_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllSketches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllSketches_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllSketches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllPlaces_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllPlaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllPlaces_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllPlaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllSurfaces_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllSurfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllSurfaces_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllSurfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllThreads_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllThreads_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllThreads_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllThreads_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllCurves_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllCurves_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllCurves_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllCurves_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllControlPoints_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllControlPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllControlPoints_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllControlPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_Perspective_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_Perspective_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_Perspective_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_Perspective_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_DrawMode_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IKompasDocument3D_put_DrawMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_DrawMode_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_DrawMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_ShadedWireframe_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_ShadedWireframe_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_ShadedWireframe_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_ShadedWireframe_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_CreateObjectsInCurrentLocalCS_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_CreateObjectsInCurrentLocalCS_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_CreateObjectsInCurrentLocalCS_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_CreateObjectsInCurrentLocalCS_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllDimensions_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllDimensions_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllDesignations_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllDesignations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllDesignations_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllDesignations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideAllAuxiliaryGeom_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideAllAuxiliaryGeom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideAllAuxiliaryGeom_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideAllAuxiliaryGeom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_put_HideInComponentsMode_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IKompasDocument3D_put_HideInComponentsMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_HideInComponentsMode_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_HideInComponentsMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_SelectionManager_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_SelectionManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_ChooseManager_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3D_get_ChooseManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_CreateAttrEx_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [in] */ double AttrID,
    /* [in] */ BSTR Libname,
    /* [in] */ VARIANT Objects,
    /* [in] */ IPart7 __RPC_FAR *SourcePart,
    /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument3D_CreateAttrEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3D_get_AttributesEx_Proxy( 
    IKompasDocument3D __RPC_FAR * This,
    /* [in] */ long Key1,
    /* [in] */ long Key2,
    /* [in] */ long Key3,
    /* [in] */ long Key4,
    /* [in] */ double Numb,
    /* [in] */ VARIANT Objects,
    /* [in] */ IPart7 __RPC_FAR *SourcePart,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IKompasDocument3D_get_AttributesEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasDocument3D_INTERFACE_DEFINED__ */


#ifndef __IDrawingObject_INTERFACE_DEFINED__
#define __IDrawingObject_INTERFACE_DEFINED__

/* interface IDrawingObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingObject,0x07EF021F,0x11C1,0x4015,0x8D,0x87,0x4D,0xC9,0x4A,0x2A,0x71,0xB0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("07EF021F-11C1-4015-8D87-4DC94A2A71B0")
    IDrawingObject : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingObjectType( 
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerNumber( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayerNumber( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Temp( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Valid( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingObjectParamType( 
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawingObjectParamType( 
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IDrawingObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IDrawingObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IDrawingObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        END_INTERFACE
    } IDrawingObjectVtbl;

    interface IDrawingObject
    {
        CONST_VTBL struct IDrawingObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDrawingObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingObject_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IDrawingObject_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IDrawingObject_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IDrawingObject_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IDrawingObject_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IDrawingObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IDrawingObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IDrawingObject_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IDrawingObject_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject_get_DrawingObjectType_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);


void __RPC_STUB IDrawingObject_get_DrawingObjectType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject_get_LayerNumber_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IDrawingObject_get_LayerNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingObject_put_LayerNumber_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB IDrawingObject_put_LayerNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject_get_Temp_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);


void __RPC_STUB IDrawingObject_get_Temp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject_get_Valid_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);


void __RPC_STUB IDrawingObject_get_Valid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingObject_Update_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IDrawingObject_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingObject_Delete_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IDrawingObject_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject_get_DrawingObjectParamType_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IDrawingObject_get_DrawingObjectParamType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingObject_put_DrawingObjectParamType_Proxy( 
    IDrawingObject __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);


void __RPC_STUB IDrawingObject_put_DrawingObjectParamType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingObject_INTERFACE_DEFINED__ */


#ifndef __IDrawingObjects_INTERFACE_DEFINED__
#define __IDrawingObjects_INTERFACE_DEFINED__

/* interface IDrawingObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingObjects,0x3DD7F97B,0x59CB,0x4297,0xA1,0xBA,0x04,0xE5,0xA7,0xFF,0xF4,0x48);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3DD7F97B-59CB-4297-A1BA-04E5A7FFF448")
    IDrawingObjects : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDrawingObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IDrawingObjectsVtbl;

    interface IDrawingObjects
    {
        CONST_VTBL struct IDrawingObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDrawingObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDrawingObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDrawingObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObjects_get_Item_Proxy( 
    IDrawingObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingObjects_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingObjects_INTERFACE_DEFINED__ */


#ifndef __IDrawingObject1_INTERFACE_DEFINED__
#define __IDrawingObject1_INTERFACE_DEFINED__

/* interface IDrawingObject1 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingObject1,0x649F0EB2,0xEBC0,0x449b,0x8B,0x61,0xDC,0x3C,0xF1,0x95,0x3B,0xF9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("649F0EB2-EBC0-449b-8B61-DC3CF1953BF9")
    IDrawingObject1 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Constraints( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE NewConstraint( 
            /* [retval][out] */ IParametriticConstraint __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Associate( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteConstraints( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TransparentBackground( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TransparentBackground( 
            /* [in] */ VARIANT_BOOL kValue) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoTransparentBackground( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoTransparentBackground( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsGeometryObject( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsAnnotativeObject( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsCurve( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingObject1Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingObject1 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingObject1 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Constraints )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *NewConstraint )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ IParametriticConstraint __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Associate )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteConstraints )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TransparentBackground )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TransparentBackground )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL kValue);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoTransparentBackground )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoTransparentBackground )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsGeometryObject )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsAnnotativeObject )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsCurve )( 
            IDrawingObject1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IDrawingObject1Vtbl;

    interface IDrawingObject1
    {
        CONST_VTBL struct IDrawingObject1Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDrawingObject1_get_Constraints(This,Result)	\
    (This)->lpVtbl -> get_Constraints(This,Result)

#define IDrawingObject1_NewConstraint(This,Result)	\
    (This)->lpVtbl -> NewConstraint(This,Result)

#define IDrawingObject1_Associate(This,Result)	\
    (This)->lpVtbl -> Associate(This,Result)

#define IDrawingObject1_DeleteConstraints(This,Result)	\
    (This)->lpVtbl -> DeleteConstraints(This,Result)

#define IDrawingObject1_get_TransparentBackground(This,Value)	\
    (This)->lpVtbl -> get_TransparentBackground(This,Value)

#define IDrawingObject1_put_TransparentBackground(This,kValue)	\
    (This)->lpVtbl -> put_TransparentBackground(This,kValue)

#define IDrawingObject1_get_AutoTransparentBackground(This,Value)	\
    (This)->lpVtbl -> get_AutoTransparentBackground(This,Value)

#define IDrawingObject1_put_AutoTransparentBackground(This,Value)	\
    (This)->lpVtbl -> put_AutoTransparentBackground(This,Value)

#define IDrawingObject1_get_IsGeometryObject(This,Result)	\
    (This)->lpVtbl -> get_IsGeometryObject(This,Result)

#define IDrawingObject1_get_IsAnnotativeObject(This,Result)	\
    (This)->lpVtbl -> get_IsAnnotativeObject(This,Result)

#define IDrawingObject1_get_IsCurve(This,Result)	\
    (This)->lpVtbl -> get_IsCurve(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_get_Constraints_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_get_Constraints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_NewConstraint_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ IParametriticConstraint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_NewConstraint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_Associate_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_Associate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_DeleteConstraints_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_DeleteConstraints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_get_TransparentBackground_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB IDrawingObject1_get_TransparentBackground_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_put_TransparentBackground_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL kValue);


void __RPC_STUB IDrawingObject1_put_TransparentBackground_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_get_AutoTransparentBackground_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB IDrawingObject1_get_AutoTransparentBackground_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_put_AutoTransparentBackground_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDrawingObject1_put_AutoTransparentBackground_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_get_IsGeometryObject_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_get_IsGeometryObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_get_IsAnnotativeObject_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_get_IsAnnotativeObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingObject1_get_IsCurve_Proxy( 
    IDrawingObject1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingObject1_get_IsCurve_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingObject1_INTERFACE_DEFINED__ */


#ifndef __IKompasDocument1_INTERFACE_DEFINED__
#define __IKompasDocument1_INTERFACE_DEFINED__

/* interface IKompasDocument1 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IKompasDocument1,0x58890FE8,0xE671,0x4561,0x99,0x4A,0x60,0x0D,0xD2,0x90,0x32,0xE4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("58890FE8-E671-4561-994A-600DD29032E4")
    IKompasDocument1 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Attributes( 
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectsByAttr( 
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT ObjectType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateAttr( 
            /* [in] */ double AttrID,
            /* [in] */ BSTR Libname,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ViewEditAttr( 
            /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetInterface( 
            /* [in] */ /* external definition not present */ KompasAPIObjectTypeEnum Type,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExternalFilesNames( 
            /* [in] */ VARIANT_BOOL allFiles,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasDocument1Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasDocument1 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasDocument1 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attributes )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectsByAttr )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT ObjectType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAttr )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ double AttrID,
            /* [in] */ BSTR Libname,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ViewEditAttr )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterface )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ KompasAPIObjectTypeEnum Type,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExternalFilesNames )( 
            IKompasDocument1 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL allFiles,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IKompasDocument1Vtbl;

    interface IKompasDocument1
    {
        CONST_VTBL struct IKompasDocument1Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasDocument1_Delete(This,Objects,Result)	\
    (This)->lpVtbl -> Delete(This,Objects,Result)

#define IKompasDocument1_get_Attributes(This,Key1,Key2,Key3,Key4,Numb,Objects,Result)	\
    (This)->lpVtbl -> get_Attributes(This,Key1,Key2,Key3,Key4,Numb,Objects,Result)

#define IKompasDocument1_get_ObjectsByAttr(This,Key1,Key2,Key3,Key4,Numb,ObjectType,Result)	\
    (This)->lpVtbl -> get_ObjectsByAttr(This,Key1,Key2,Key3,Key4,Numb,ObjectType,Result)

#define IKompasDocument1_CreateAttr(This,AttrID,Libname,Objects,Result)	\
    (This)->lpVtbl -> CreateAttr(This,AttrID,Libname,Objects,Result)

#define IKompasDocument1_ViewEditAttr(This,HWnd,Objects,Result)	\
    (This)->lpVtbl -> ViewEditAttr(This,HWnd,Objects,Result)

#define IKompasDocument1_GetInterface(This,Type,Result)	\
    (This)->lpVtbl -> GetInterface(This,Type,Result)

#define IKompasDocument1_get_ExternalFilesNames(This,allFiles,Result)	\
    (This)->lpVtbl -> get_ExternalFilesNames(This,allFiles,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_Delete_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_get_Attributes_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ long Key1,
    /* [in] */ long Key2,
    /* [in] */ long Key3,
    /* [in] */ long Key4,
    /* [in] */ double Numb,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_get_Attributes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_get_ObjectsByAttr_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ long Key1,
    /* [in] */ long Key2,
    /* [in] */ long Key3,
    /* [in] */ long Key4,
    /* [in] */ double Numb,
    /* [in] */ VARIANT ObjectType,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_get_ObjectsByAttr_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_CreateAttr_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ double AttrID,
    /* [in] */ BSTR Libname,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_CreateAttr_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_ViewEditAttr_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_ViewEditAttr_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_GetInterface_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ KompasAPIObjectTypeEnum Type,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_GetInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument1_get_ExternalFilesNames_Proxy( 
    IKompasDocument1 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL allFiles,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IKompasDocument1_get_ExternalFilesNames_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasDocument1_INTERFACE_DEFINED__ */


#ifndef __IKompasDocument2D1_INTERFACE_DEFINED__
#define __IKompasDocument2D1_INTERFACE_DEFINED__

/* interface IKompasDocument2D1 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IKompasDocument2D1,0xFB57F1C4,0x44FE,0x4c73,0x9B,0x15,0x87,0x24,0x1E,0x87,0x35,0xB5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FB57F1C4-44FE-4c73-9B15-87241E8735B5")
    IKompasDocument2D1 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EditMacroObject( 
            /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingGroups( 
            /* [retval][out] */ IDrawingGroups __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NamedGroups( 
            /* [retval][out] */ IDrawingGroups __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentGroup( 
            /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SelectionManager( 
            /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ChooseManager( 
            /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CopyObjects( 
            /* [in] */ VARIANT objects,
            /* [in] */ ICopyObjectParam __RPC_FAR *params,
            /* [retval][out] */ VARIANT __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variables( 
            /* [in] */ VARIANT_BOOL ExternalOnly,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variable( 
            /* [in] */ VARIANT_BOOL External,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VariablesCount( 
            /* [in] */ VARIANT_BOOL External,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateVariables( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VariableTable( 
            /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsVariableNameValid( 
            BSTR Name,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddVariable( 
            /* [in] */ BSTR Name,
            /* [in] */ double Value,
            /* [in] */ BSTR Note,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RebuildDocument( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasDocument2D1Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasDocument2D1 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasDocument2D1 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EditMacroObject )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingGroups )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ IDrawingGroups __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NamedGroups )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ IDrawingGroups __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentGroup )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SelectionManager )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChooseManager )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopyObjects )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ VARIANT objects,
            /* [in] */ ICopyObjectParam __RPC_FAR *params,
            /* [retval][out] */ VARIANT __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variables )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ExternalOnly,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variable )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL External,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariablesCount )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL External,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UpdateVariables )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariableTable )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsVariableNameValid )( 
            IKompasDocument2D1 __RPC_FAR * This,
            BSTR Name,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddVariable )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ double Value,
            /* [in] */ BSTR Note,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RebuildDocument )( 
            IKompasDocument2D1 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IKompasDocument2D1Vtbl;

    interface IKompasDocument2D1
    {
        CONST_VTBL struct IKompasDocument2D1Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasDocument2D1_get_EditMacroObject(This,PVal)	\
    (This)->lpVtbl -> get_EditMacroObject(This,PVal)

#define IKompasDocument2D1_get_DrawingGroups(This,PVal)	\
    (This)->lpVtbl -> get_DrawingGroups(This,PVal)

#define IKompasDocument2D1_get_NamedGroups(This,PVal)	\
    (This)->lpVtbl -> get_NamedGroups(This,PVal)

#define IKompasDocument2D1_get_CurrentGroup(This,PVal)	\
    (This)->lpVtbl -> get_CurrentGroup(This,PVal)

#define IKompasDocument2D1_get_SelectionManager(This,PVal)	\
    (This)->lpVtbl -> get_SelectionManager(This,PVal)

#define IKompasDocument2D1_get_ChooseManager(This,PVal)	\
    (This)->lpVtbl -> get_ChooseManager(This,PVal)

#define IKompasDocument2D1_CopyObjects(This,objects,params,result)	\
    (This)->lpVtbl -> CopyObjects(This,objects,params,result)

#define IKompasDocument2D1_get_Variables(This,ExternalOnly,Result)	\
    (This)->lpVtbl -> get_Variables(This,ExternalOnly,Result)

#define IKompasDocument2D1_get_Variable(This,External,Index,Result)	\
    (This)->lpVtbl -> get_Variable(This,External,Index,Result)

#define IKompasDocument2D1_get_VariablesCount(This,External,Result)	\
    (This)->lpVtbl -> get_VariablesCount(This,External,Result)

#define IKompasDocument2D1_UpdateVariables(This,Result)	\
    (This)->lpVtbl -> UpdateVariables(This,Result)

#define IKompasDocument2D1_get_VariableTable(This,Result)	\
    (This)->lpVtbl -> get_VariableTable(This,Result)

#define IKompasDocument2D1_IsVariableNameValid(This,Name,Result)	\
    (This)->lpVtbl -> IsVariableNameValid(This,Name,Result)

#define IKompasDocument2D1_AddVariable(This,Name,Value,Note,Result)	\
    (This)->lpVtbl -> AddVariable(This,Name,Value,Note,Result)

#define IKompasDocument2D1_RebuildDocument(This,Result)	\
    (This)->lpVtbl -> RebuildDocument(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_EditMacroObject_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument2D1_get_EditMacroObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_DrawingGroups_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ IDrawingGroups __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument2D1_get_DrawingGroups_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_NamedGroups_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ IDrawingGroups __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument2D1_get_NamedGroups_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_CurrentGroup_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument2D1_get_CurrentGroup_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_SelectionManager_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument2D1_get_SelectionManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_ChooseManager_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument2D1_get_ChooseManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_CopyObjects_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [in] */ VARIANT objects,
    /* [in] */ ICopyObjectParam __RPC_FAR *params,
    /* [retval][out] */ VARIANT __RPC_FAR *result);


void __RPC_STUB IKompasDocument2D1_CopyObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_Variables_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ExternalOnly,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_get_Variables_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_Variable_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL External,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_get_Variable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_VariablesCount_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL External,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_get_VariablesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_UpdateVariables_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_UpdateVariables_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_get_VariableTable_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_get_VariableTable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_IsVariableNameValid_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    BSTR Name,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_IsVariableNameValid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_AddVariable_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ double Value,
    /* [in] */ BSTR Note,
    /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_AddVariable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasDocument2D1_RebuildDocument_Proxy( 
    IKompasDocument2D1 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IKompasDocument2D1_RebuildDocument_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasDocument2D1_INTERFACE_DEFINED__ */


#ifndef __IApplication_INTERFACE_DEFINED__
#define __IApplication_INTERFACE_DEFINED__

/* interface IApplication */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IApplication,0x6A2EFAF7,0x8254,0x45A5,0x9D,0xC8,0x22,0x13,0xF1,0x6A,0xF5,0xD7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6A2EFAF7-8254-45A5-9DC8-2213F16AF5D7")
    IApplication : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewText = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Documents( 
            /* [retval][out] */ IDocuments __RPC_FAR *__RPC_FAR *Documents) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Quit( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateProcessParam( 
            /* [retval][out] */ IProcessParam __RPC_FAR *__RPC_FAR *PProcessParam) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE StopCurrentProcess( 
            /* [defaultvalue][in] */ VARIANT_BOOL PostMessage = FALSE,
            /* [defaultvalue][in] */ IKompasDocument __RPC_FAR *PDoc = 0) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreatePropertyManager( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewManager,
            /* [retval][out] */ IPropertyManager __RPC_FAR *__RPC_FAR *PPropertyManager) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveDocument( 
            /* [in] */ IKompasDocument __RPC_FAR *PDoc) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveDocument( 
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *PDoc) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryManager( 
            /* [retval][out] */ ILibraryManager __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_KompasError( 
            /* [retval][out] */ IKompasError __RPC_FAR *__RPC_FAR *pRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Converter( 
            /* [in] */ VARIANT Library,
            /* [retval][out] */ IConverter __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CheckSum( 
            /* [retval][out] */ ICheckSum __RPC_FAR *__RPC_FAR *pRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProgressBarIndicator( 
            /* [retval][out] */ IProgressBarIndicator __RPC_FAR *__RPC_FAR *pRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HideMessage( 
            /* [in] */ /* external definition not present */ ksHideMessageEnum NewHide) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HideMessage( 
            /* [retval][out] */ /* external definition not present */ ksHideMessageEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ExecuteKompasCommand( 
            /* [in] */ long CommandID,
            /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsKompasCommandEnable( 
            /* [in] */ long CommandID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsKompasCommandCheck( 
            /* [in] */ long CommandID,
            /* [retval][out] */ long __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SystemSettings( 
            /* [retval][out] */ ISystemSettings __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ApplicationName( 
            /* [in] */ VARIANT_BOOL FullName,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Math2D( 
            /* [retval][out] */ IMath2D __RPC_FAR *__RPC_FAR *pRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrintJob( 
            /* [retval][out] */ IPrintJob __RPC_FAR *__RPC_FAR *PrintJob) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE MessageBoxEx( 
            /* [in] */ BSTR Text,
            /* [in] */ BSTR Caption,
            /* [in] */ long Flags,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IApplicationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IApplication __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IApplication __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IApplication __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IApplication __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IApplication __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IApplication __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IApplication __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IApplication __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Documents )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IDocuments __RPC_FAR *__RPC_FAR *Documents);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Quit )( 
            IApplication __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateProcessParam )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IProcessParam __RPC_FAR *__RPC_FAR *PProcessParam);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *StopCurrentProcess )( 
            IApplication __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
            /* [defaultvalue][in] */ IKompasDocument __RPC_FAR *PDoc);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreatePropertyManager )( 
            IApplication __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewManager,
            /* [retval][out] */ IPropertyManager __RPC_FAR *__RPC_FAR *PPropertyManager);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveDocument )( 
            IApplication __RPC_FAR * This,
            /* [in] */ IKompasDocument __RPC_FAR *PDoc);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveDocument )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *PDoc);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryManager )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ ILibraryManager __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_KompasError )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IKompasError __RPC_FAR *__RPC_FAR *pRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Converter )( 
            IApplication __RPC_FAR * This,
            /* [in] */ VARIANT Library,
            /* [retval][out] */ IConverter __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CheckSum )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ ICheckSum __RPC_FAR *__RPC_FAR *pRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProgressBarIndicator )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IProgressBarIndicator __RPC_FAR *__RPC_FAR *pRes);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideMessage )( 
            IApplication __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksHideMessageEnum NewHide);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideMessage )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksHideMessageEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ExecuteKompasCommand )( 
            IApplication __RPC_FAR * This,
            /* [in] */ long CommandID,
            /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsKompasCommandEnable )( 
            IApplication __RPC_FAR * This,
            /* [in] */ long CommandID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsKompasCommandCheck )( 
            IApplication __RPC_FAR * This,
            /* [in] */ long CommandID,
            /* [retval][out] */ long __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SystemSettings )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ ISystemSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ApplicationName )( 
            IApplication __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL FullName,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Math2D )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IMath2D __RPC_FAR *__RPC_FAR *pRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PrintJob )( 
            IApplication __RPC_FAR * This,
            /* [retval][out] */ IPrintJob __RPC_FAR *__RPC_FAR *PrintJob);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MessageBoxEx )( 
            IApplication __RPC_FAR * This,
            /* [in] */ BSTR Text,
            /* [in] */ BSTR Caption,
            /* [in] */ long Flags,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        END_INTERFACE
    } IApplicationVtbl;

    interface IApplication
    {
        CONST_VTBL struct IApplicationVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IApplication_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IApplication_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IApplication_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IApplication_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IApplication_put_Visible(This,NewText)	\
    (This)->lpVtbl -> put_Visible(This,NewText)

#define IApplication_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IApplication_get_Documents(This,Documents)	\
    (This)->lpVtbl -> get_Documents(This,Documents)

#define IApplication_Quit(This)	\
    (This)->lpVtbl -> Quit(This)

#define IApplication_CreateProcessParam(This,PProcessParam)	\
    (This)->lpVtbl -> CreateProcessParam(This,PProcessParam)

#define IApplication_StopCurrentProcess(This,PostMessage,PDoc)	\
    (This)->lpVtbl -> StopCurrentProcess(This,PostMessage,PDoc)

#define IApplication_CreatePropertyManager(This,NewManager,PPropertyManager)	\
    (This)->lpVtbl -> CreatePropertyManager(This,NewManager,PPropertyManager)

#define IApplication_put_ActiveDocument(This,PDoc)	\
    (This)->lpVtbl -> put_ActiveDocument(This,PDoc)

#define IApplication_get_ActiveDocument(This,PDoc)	\
    (This)->lpVtbl -> get_ActiveDocument(This,PDoc)

#define IApplication_get_LibraryManager(This,PRes)	\
    (This)->lpVtbl -> get_LibraryManager(This,PRes)

#define IApplication_get_KompasError(This,pRes)	\
    (This)->lpVtbl -> get_KompasError(This,pRes)

#define IApplication_get_Converter(This,Library,PVal)	\
    (This)->lpVtbl -> get_Converter(This,Library,PVal)

#define IApplication_get_CheckSum(This,pRes)	\
    (This)->lpVtbl -> get_CheckSum(This,pRes)

#define IApplication_get_ProgressBarIndicator(This,pRes)	\
    (This)->lpVtbl -> get_ProgressBarIndicator(This,pRes)

#define IApplication_put_HideMessage(This,NewHide)	\
    (This)->lpVtbl -> put_HideMessage(This,NewHide)

#define IApplication_get_HideMessage(This,PVal)	\
    (This)->lpVtbl -> get_HideMessage(This,PVal)

#define IApplication_ExecuteKompasCommand(This,CommandID,PostMessage,PRes)	\
    (This)->lpVtbl -> ExecuteKompasCommand(This,CommandID,PostMessage,PRes)

#define IApplication_IsKompasCommandEnable(This,CommandID,PRes)	\
    (This)->lpVtbl -> IsKompasCommandEnable(This,CommandID,PRes)

#define IApplication_IsKompasCommandCheck(This,CommandID,PRes)	\
    (This)->lpVtbl -> IsKompasCommandCheck(This,CommandID,PRes)

#define IApplication_get_SystemSettings(This,PVal)	\
    (This)->lpVtbl -> get_SystemSettings(This,PVal)

#define IApplication_get_ApplicationName(This,FullName,PVal)	\
    (This)->lpVtbl -> get_ApplicationName(This,FullName,PVal)

#define IApplication_get_Math2D(This,pRes)	\
    (This)->lpVtbl -> get_Math2D(This,pRes)

#define IApplication_get_PrintJob(This,PrintJob)	\
    (This)->lpVtbl -> get_PrintJob(This,PrintJob)

#define IApplication_MessageBoxEx(This,Text,Caption,Flags,Result)	\
    (This)->lpVtbl -> MessageBoxEx(This,Text,Caption,Flags,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IApplication_put_Visible_Proxy( 
    IApplication __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewText);


void __RPC_STUB IApplication_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_Visible_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IApplication_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_Documents_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IDocuments __RPC_FAR *__RPC_FAR *Documents);


void __RPC_STUB IApplication_get_Documents_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_Quit_Proxy( 
    IApplication __RPC_FAR * This);


void __RPC_STUB IApplication_Quit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_CreateProcessParam_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IProcessParam __RPC_FAR *__RPC_FAR *PProcessParam);


void __RPC_STUB IApplication_CreateProcessParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_StopCurrentProcess_Proxy( 
    IApplication __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
    /* [defaultvalue][in] */ IKompasDocument __RPC_FAR *PDoc);


void __RPC_STUB IApplication_StopCurrentProcess_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_CreatePropertyManager_Proxy( 
    IApplication __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewManager,
    /* [retval][out] */ IPropertyManager __RPC_FAR *__RPC_FAR *PPropertyManager);


void __RPC_STUB IApplication_CreatePropertyManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IApplication_put_ActiveDocument_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ IKompasDocument __RPC_FAR *PDoc);


void __RPC_STUB IApplication_put_ActiveDocument_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_ActiveDocument_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *PDoc);


void __RPC_STUB IApplication_get_ActiveDocument_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_LibraryManager_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ ILibraryManager __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IApplication_get_LibraryManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_KompasError_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IKompasError __RPC_FAR *__RPC_FAR *pRes);


void __RPC_STUB IApplication_get_KompasError_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_Converter_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ VARIANT Library,
    /* [retval][out] */ IConverter __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IApplication_get_Converter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_CheckSum_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ ICheckSum __RPC_FAR *__RPC_FAR *pRes);


void __RPC_STUB IApplication_get_CheckSum_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_ProgressBarIndicator_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IProgressBarIndicator __RPC_FAR *__RPC_FAR *pRes);


void __RPC_STUB IApplication_get_ProgressBarIndicator_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IApplication_put_HideMessage_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksHideMessageEnum NewHide);


void __RPC_STUB IApplication_put_HideMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_HideMessage_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksHideMessageEnum __RPC_FAR *PVal);


void __RPC_STUB IApplication_get_HideMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_ExecuteKompasCommand_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ long CommandID,
    /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IApplication_ExecuteKompasCommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_IsKompasCommandEnable_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ long CommandID,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IApplication_IsKompasCommandEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_IsKompasCommandCheck_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ long CommandID,
    /* [retval][out] */ long __RPC_FAR *PRes);


void __RPC_STUB IApplication_IsKompasCommandCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_SystemSettings_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ ISystemSettings __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IApplication_get_SystemSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_ApplicationName_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL FullName,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IApplication_get_ApplicationName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_Math2D_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IMath2D __RPC_FAR *__RPC_FAR *pRes);


void __RPC_STUB IApplication_get_Math2D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IApplication_get_PrintJob_Proxy( 
    IApplication __RPC_FAR * This,
    /* [retval][out] */ IPrintJob __RPC_FAR *__RPC_FAR *PrintJob);


void __RPC_STUB IApplication_get_PrintJob_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IApplication_MessageBoxEx_Proxy( 
    IApplication __RPC_FAR * This,
    /* [in] */ BSTR Text,
    /* [in] */ BSTR Caption,
    /* [in] */ long Flags,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IApplication_MessageBoxEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IApplication_INTERFACE_DEFINED__ */


#ifndef __IDocuments_INTERFACE_DEFINED__
#define __IDocuments_INTERFACE_DEFINED__

/* interface IDocuments */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDocuments,0x8BF39F08,0x5537,0x4910,0x84,0xCE,0xB3,0x38,0xE5,0x5F,0x7B,0xCF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8BF39F08-5537-4910-84CE-B338E55F7BCF")
    IDocuments : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ DocumentTypeEnum Type,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Open( 
            /* [in] */ BSTR PathName,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE OpenEx( 
            /* [in] */ BSTR PathName,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
            /* [in] */ VARIANT LoadCombinationIndex,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLoadCombinations( 
            /* [in] */ BSTR PathName,
            /* [out] */ long __RPC_FAR *CurrentIndex,
            /* [retval][out] */ VARIANT __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddWithDefaultSettings( 
            /* [in] */ /* external definition not present */ DocumentTypeEnum Type,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDocumentsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDocuments __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDocuments __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDocuments __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDocuments __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDocuments __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDocuments __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDocuments __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDocuments __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDocuments __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentTypeEnum Type,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ BSTR PathName,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *OpenEx )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ BSTR PathName,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
            /* [in] */ VARIANT LoadCombinationIndex,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLoadCombinations )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ BSTR PathName,
            /* [out] */ long __RPC_FAR *CurrentIndex,
            /* [retval][out] */ VARIANT __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddWithDefaultSettings )( 
            IDocuments __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentTypeEnum Type,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IDocumentsVtbl;

    interface IDocuments
    {
        CONST_VTBL struct IDocumentsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDocuments_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDocuments_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDocuments_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDocuments_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDocuments_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDocuments_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDocuments_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IDocuments_Add(This,Type,Visible,Result)	\
    (This)->lpVtbl -> Add(This,Type,Visible,Result)

#define IDocuments_Open(This,PathName,Visible,ReadOnly,Result)	\
    (This)->lpVtbl -> Open(This,PathName,Visible,ReadOnly,Result)

#define IDocuments_OpenEx(This,PathName,Visible,ReadOnly,LoadCombinationIndex,Result)	\
    (This)->lpVtbl -> OpenEx(This,PathName,Visible,ReadOnly,LoadCombinationIndex,Result)

#define IDocuments_GetLoadCombinations(This,PathName,CurrentIndex,Value)	\
    (This)->lpVtbl -> GetLoadCombinations(This,PathName,CurrentIndex,Value)

#define IDocuments_AddWithDefaultSettings(This,Type,Visible,Result)	\
    (This)->lpVtbl -> AddWithDefaultSettings(This,Type,Visible,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocuments_get_Item_Proxy( 
    IDocuments __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDocuments_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocuments_Add_Proxy( 
    IDocuments __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DocumentTypeEnum Type,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDocuments_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocuments_Open_Proxy( 
    IDocuments __RPC_FAR * This,
    /* [in] */ BSTR PathName,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible,
    /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDocuments_Open_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocuments_OpenEx_Proxy( 
    IDocuments __RPC_FAR * This,
    /* [in] */ BSTR PathName,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible,
    /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
    /* [in] */ VARIANT LoadCombinationIndex,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDocuments_OpenEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocuments_GetLoadCombinations_Proxy( 
    IDocuments __RPC_FAR * This,
    /* [in] */ BSTR PathName,
    /* [out] */ long __RPC_FAR *CurrentIndex,
    /* [retval][out] */ VARIANT __RPC_FAR *Value);


void __RPC_STUB IDocuments_GetLoadCombinations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocuments_AddWithDefaultSettings_Proxy( 
    IDocuments __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DocumentTypeEnum Type,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDocuments_AddWithDefaultSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDocuments_INTERFACE_DEFINED__ */


#ifndef __IDocumentFrame_INTERFACE_DEFINED__
#define __IDocumentFrame_INTERFACE_DEFINED__

/* interface IDocumentFrame */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDocumentFrame,0x4437FABA,0x990F,0x45e2,0xB1,0xA2,0x77,0x54,0xFB,0x32,0x6B,0x76);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4437FABA-990F-45e2-B1A2-7754FB326B76")
    IDocumentFrame : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Regime( 
            /* [in] */ /* external definition not present */ FrameRegimeEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Regime( 
            /* [retval][out] */ /* external definition not present */ FrameRegimeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Active( 
            /* [defaultvalue][in] */ VARIANT_BOOL PVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Caption( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Zoom( 
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ZoomPrevNextOrAll( 
            /* [in] */ /* external definition not present */ ZoomTypeEnum Type) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ZoomScale( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Scale) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetZoomScale( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Scale) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetHWND( 
            /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *HWnd) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGabaritModifying( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RefreshWindow( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ConvertCoordinates( 
            /* [in] */ /* external definition not present */ ConvertCoordTypeEnum type,
            /* [in] */ long LX,
            /* [in] */ long LY,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ExecuteKompasCommand( 
            /* [in] */ long CommandID,
            /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsKompasCommandEnable( 
            /* [in] */ long CommandID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsKompasCommandCheck( 
            /* [in] */ long CommandID,
            /* [retval][out] */ long __RPC_FAR *PRes) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDocumentFrameVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDocumentFrame __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDocumentFrame __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDocumentFrame __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Regime )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ /* external definition not present */ FrameRegimeEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Regime )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ FrameRegimeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IDocumentFrame __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Caption )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Zoom )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ZoomPrevNextOrAll )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ZoomTypeEnum Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ZoomScale )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Scale);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetZoomScale )( 
            IDocumentFrame __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Scale);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHWND )( 
            IDocumentFrame __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *HWnd);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGabaritModifying )( 
            IDocumentFrame __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RefreshWindow )( 
            IDocumentFrame __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ConvertCoordinates )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ConvertCoordTypeEnum type,
            /* [in] */ long LX,
            /* [in] */ long LY,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ExecuteKompasCommand )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ long CommandID,
            /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsKompasCommandEnable )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ long CommandID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsKompasCommandCheck )( 
            IDocumentFrame __RPC_FAR * This,
            /* [in] */ long CommandID,
            /* [retval][out] */ long __RPC_FAR *PRes);
        
        END_INTERFACE
    } IDocumentFrameVtbl;

    interface IDocumentFrame
    {
        CONST_VTBL struct IDocumentFrameVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDocumentFrame_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDocumentFrame_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDocumentFrame_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDocumentFrame_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDocumentFrame_put_Regime(This,PVal)	\
    (This)->lpVtbl -> put_Regime(This,PVal)

#define IDocumentFrame_get_Regime(This,PVal)	\
    (This)->lpVtbl -> get_Regime(This,PVal)

#define IDocumentFrame_put_Active(This,PVal)	\
    (This)->lpVtbl -> put_Active(This,PVal)

#define IDocumentFrame_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IDocumentFrame_get_Caption(This,PVal)	\
    (This)->lpVtbl -> get_Caption(This,PVal)

#define IDocumentFrame_Zoom(This,X1,Y1,X2,Y2)	\
    (This)->lpVtbl -> Zoom(This,X1,Y1,X2,Y2)

#define IDocumentFrame_ZoomPrevNextOrAll(This,Type)	\
    (This)->lpVtbl -> ZoomPrevNextOrAll(This,Type)

#define IDocumentFrame_ZoomScale(This,X,Y,Scale)	\
    (This)->lpVtbl -> ZoomScale(This,X,Y,Scale)

#define IDocumentFrame_GetZoomScale(This,X,Y,Scale)	\
    (This)->lpVtbl -> GetZoomScale(This,X,Y,Scale)

#define IDocumentFrame_GetHWND(This,HWnd)	\
    (This)->lpVtbl -> GetHWND(This,HWnd)

#define IDocumentFrame_SetGabaritModifying(This)	\
    (This)->lpVtbl -> SetGabaritModifying(This)

#define IDocumentFrame_RefreshWindow(This)	\
    (This)->lpVtbl -> RefreshWindow(This)

#define IDocumentFrame_ConvertCoordinates(This,type,LX,LY,X,Y,Z,Result)	\
    (This)->lpVtbl -> ConvertCoordinates(This,type,LX,LY,X,Y,Z,Result)

#define IDocumentFrame_ExecuteKompasCommand(This,CommandID,PostMessage,PRes)	\
    (This)->lpVtbl -> ExecuteKompasCommand(This,CommandID,PostMessage,PRes)

#define IDocumentFrame_IsKompasCommandEnable(This,CommandID,PRes)	\
    (This)->lpVtbl -> IsKompasCommandEnable(This,CommandID,PRes)

#define IDocumentFrame_IsKompasCommandCheck(This,CommandID,PRes)	\
    (This)->lpVtbl -> IsKompasCommandCheck(This,CommandID,PRes)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_put_Regime_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ /* external definition not present */ FrameRegimeEnum PVal);


void __RPC_STUB IDocumentFrame_put_Regime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_get_Regime_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ FrameRegimeEnum __RPC_FAR *PVal);


void __RPC_STUB IDocumentFrame_get_Regime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_put_Active_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL PVal);


void __RPC_STUB IDocumentFrame_put_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_get_Active_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDocumentFrame_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_get_Caption_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IDocumentFrame_get_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_Zoom_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ double X1,
    /* [in] */ double Y1,
    /* [in] */ double X2,
    /* [in] */ double Y2);


void __RPC_STUB IDocumentFrame_Zoom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_ZoomPrevNextOrAll_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ZoomTypeEnum Type);


void __RPC_STUB IDocumentFrame_ZoomPrevNextOrAll_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_ZoomScale_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Scale);


void __RPC_STUB IDocumentFrame_ZoomScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_GetZoomScale_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Scale);


void __RPC_STUB IDocumentFrame_GetZoomScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_GetHWND_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *HWnd);


void __RPC_STUB IDocumentFrame_GetHWND_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_SetGabaritModifying_Proxy( 
    IDocumentFrame __RPC_FAR * This);


void __RPC_STUB IDocumentFrame_SetGabaritModifying_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_RefreshWindow_Proxy( 
    IDocumentFrame __RPC_FAR * This);


void __RPC_STUB IDocumentFrame_RefreshWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_ConvertCoordinates_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ConvertCoordTypeEnum type,
    /* [in] */ long LX,
    /* [in] */ long LY,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDocumentFrame_ConvertCoordinates_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_ExecuteKompasCommand_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ long CommandID,
    /* [defaultvalue][in] */ VARIANT_BOOL PostMessage,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IDocumentFrame_ExecuteKompasCommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_IsKompasCommandEnable_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ long CommandID,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IDocumentFrame_IsKompasCommandEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDocumentFrame_IsKompasCommandCheck_Proxy( 
    IDocumentFrame __RPC_FAR * This,
    /* [in] */ long CommandID,
    /* [retval][out] */ long __RPC_FAR *PRes);


void __RPC_STUB IDocumentFrame_IsKompasCommandCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDocumentFrame_INTERFACE_DEFINED__ */


#ifndef __IDocumentFrames_INTERFACE_DEFINED__
#define __IDocumentFrames_INTERFACE_DEFINED__

/* interface IDocumentFrames */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDocumentFrames,0x1D18C466,0xC085,0x4d68,0xA4,0x65,0xA8,0x5D,0x0C,0x8E,0x3A,0x0E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1D18C466-C085-4d68-A465-A85D0C8E3A0E")
    IDocumentFrames : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDocumentFrame __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDocumentFramesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDocumentFrames __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDocumentFrames __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDocumentFrames __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDocumentFrames __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDocumentFrames __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDocumentFrames __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDocumentFrames __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDocumentFrames __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDocumentFrames __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDocumentFrames __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDocumentFrames __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDocumentFrames __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDocumentFrames __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDocumentFrames __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDocumentFrame __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IDocumentFramesVtbl;

    interface IDocumentFrames
    {
        CONST_VTBL struct IDocumentFramesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDocumentFrames_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDocumentFrames_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDocumentFrames_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDocumentFrames_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDocumentFrames_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDocumentFrames_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDocumentFrames_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocumentFrames_get_Item_Proxy( 
    IDocumentFrames __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDocumentFrame __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDocumentFrames_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDocumentFrames_INTERFACE_DEFINED__ */


#ifndef __IDrawingDocument_INTERFACE_DEFINED__
#define __IDrawingDocument_INTERFACE_DEFINED__

/* interface IDrawingDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IDrawingDocument,0xC2214318,0x5C89,0x40f8,0xA2,0x5C,0xC8,0x7D,0x08,0xB4,0x90,0xF4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C2214318-5C89-40f8-A25C-C87D08B490F4")
    IDrawingDocument : public IKompasDocument2D
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ChangeListDescriptions( 
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecRough( 
            /* [retval][out] */ ISpecRough __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TechnicalDemand( 
            /* [retval][out] */ ITechnicalDemand __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IDrawingDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IDrawingDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IDrawingDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IDrawingDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IDrawingDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewsAndLayersManager )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IViewsAndLayersManager __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDrawingObjectNotifyResult )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChangeListDescriptions )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecRough )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecRough __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TechnicalDemand )( 
            IDrawingDocument __RPC_FAR * This,
            /* [retval][out] */ ITechnicalDemand __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IDrawingDocumentVtbl;

    interface IDrawingDocument
    {
        CONST_VTBL struct IDrawingDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDrawingDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IDrawingDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IDrawingDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IDrawingDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IDrawingDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IDrawingDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IDrawingDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IDrawingDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IDrawingDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IDrawingDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IDrawingDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IDrawingDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IDrawingDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IDrawingDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IDrawingDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IDrawingDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IDrawingDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IDrawingDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define IDrawingDocument_get_ViewsAndLayersManager(This,Result)	\
    (This)->lpVtbl -> get_ViewsAndLayersManager(This,Result)

#define IDrawingDocument_GetDrawingObjectNotifyResult(This,Result)	\
    (This)->lpVtbl -> GetDrawingObjectNotifyResult(This,Result)


#define IDrawingDocument_get_ChangeListDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_ChangeListDescriptions(This,PVal)

#define IDrawingDocument_get_SpecRough(This,PVal)	\
    (This)->lpVtbl -> get_SpecRough(This,PVal)

#define IDrawingDocument_get_TechnicalDemand(This,PVal)	\
    (This)->lpVtbl -> get_TechnicalDemand(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocument_get_ChangeListDescriptions_Proxy( 
    IDrawingDocument __RPC_FAR * This,
    /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingDocument_get_ChangeListDescriptions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocument_get_SpecRough_Proxy( 
    IDrawingDocument __RPC_FAR * This,
    /* [retval][out] */ ISpecRough __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingDocument_get_SpecRough_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocument_get_TechnicalDemand_Proxy( 
    IDrawingDocument __RPC_FAR * This,
    /* [retval][out] */ ITechnicalDemand __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingDocument_get_TechnicalDemand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingDocument_INTERFACE_DEFINED__ */


#ifndef __IFragmentDocument_INTERFACE_DEFINED__
#define __IFragmentDocument_INTERFACE_DEFINED__

/* interface IFragmentDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IFragmentDocument,0xE19CE626,0xDF9C,0x48c4,0xA8,0x3D,0x3E,0x3B,0xC7,0xF0,0xDA,0xCA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E19CE626-DF9C-48c4-A83D-3E3BC7F0DACA")
    IFragmentDocument : public IKompasDocument2D
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsSketch( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFragmentDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IFragmentDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IFragmentDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IFragmentDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IFragmentDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IFragmentDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IFragmentDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IFragmentDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IFragmentDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IFragmentDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IFragmentDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IFragmentDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IFragmentDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewsAndLayersManager )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IViewsAndLayersManager __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDrawingObjectNotifyResult )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsSketch )( 
            IFragmentDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IFragmentDocumentVtbl;

    interface IFragmentDocument
    {
        CONST_VTBL struct IFragmentDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IFragmentDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IFragmentDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IFragmentDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IFragmentDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IFragmentDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IFragmentDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IFragmentDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IFragmentDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IFragmentDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IFragmentDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IFragmentDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IFragmentDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IFragmentDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IFragmentDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IFragmentDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IFragmentDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IFragmentDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IFragmentDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IFragmentDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IFragmentDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IFragmentDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IFragmentDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define IFragmentDocument_get_ViewsAndLayersManager(This,Result)	\
    (This)->lpVtbl -> get_ViewsAndLayersManager(This,Result)

#define IFragmentDocument_GetDrawingObjectNotifyResult(This,Result)	\
    (This)->lpVtbl -> GetDrawingObjectNotifyResult(This,Result)


#define IFragmentDocument_get_IsSketch(This,Result)	\
    (This)->lpVtbl -> get_IsSketch(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFragmentDocument_get_IsSketch_Proxy( 
    IFragmentDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IFragmentDocument_get_IsSketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFragmentDocument_INTERFACE_DEFINED__ */


#ifndef __ISpecificationDocument_INTERFACE_DEFINED__
#define __ISpecificationDocument_INTERFACE_DEFINED__

/* interface ISpecificationDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_ISpecificationDocument,0xE3FA8FD0,0x6187,0x4625,0x89,0xB7,0x3C,0x81,0x56,0x51,0x94,0x4D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E3FA8FD0-6187-4625-89B7-3C815651944D")
    ISpecificationDocument : public IKompasDocument
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttachedDocuments( 
            /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            ISpecificationDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttachedDocuments )( 
            ISpecificationDocument __RPC_FAR * This,
            /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationDocumentVtbl;

    interface ISpecificationDocument
    {
        CONST_VTBL struct ISpecificationDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ISpecificationDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define ISpecificationDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define ISpecificationDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define ISpecificationDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define ISpecificationDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define ISpecificationDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISpecificationDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define ISpecificationDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define ISpecificationDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define ISpecificationDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define ISpecificationDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define ISpecificationDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define ISpecificationDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define ISpecificationDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define ISpecificationDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define ISpecificationDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define ISpecificationDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define ISpecificationDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define ISpecificationDocument_get_AttachedDocuments(This,pVal)	\
    (This)->lpVtbl -> get_AttachedDocuments(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDocument_get_AttachedDocuments_Proxy( 
    ISpecificationDocument __RPC_FAR * This,
    /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationDocument_get_AttachedDocuments_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationDocument_INTERFACE_DEFINED__ */


#ifndef __ITextDocument_INTERFACE_DEFINED__
#define __ITextDocument_INTERFACE_DEFINED__

/* interface ITextDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_ITextDocument,0x71A589EA,0xD32F,0x42c4,0xBB,0xC4,0xA5,0x16,0x11,0xE8,0x5E,0x90);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("71A589EA-D32F-42c4-BBC4-A51611E85E90")
    ITextDocument : public IKompasDocument
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct ITextDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITextDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITextDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITextDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITextDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITextDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITextDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITextDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            ITextDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            ITextDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            ITextDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            ITextDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            ITextDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            ITextDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ITextDocumentVtbl;

    interface ITextDocument
    {
        CONST_VTBL struct ITextDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ITextDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITextDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITextDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITextDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITextDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define ITextDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define ITextDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define ITextDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define ITextDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define ITextDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ITextDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define ITextDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define ITextDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define ITextDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define ITextDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define ITextDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define ITextDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define ITextDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define ITextDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define ITextDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define ITextDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define ITextDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ITextDocument_INTERFACE_DEFINED__ */


#ifndef __IPartDocument_INTERFACE_DEFINED__
#define __IPartDocument_INTERFACE_DEFINED__

/* interface IPartDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IPartDocument,0x0075EA2A,0x5498,0x4e28,0xBD,0xF3,0x02,0x88,0xEB,0x16,0x80,0x54);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0075EA2A-5498-4e28-BDF3-0288EB168054")
    IPartDocument : public IKompasDocument3D
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IPartDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPartDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPartDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPartDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IPartDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TopPart )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllPlanes )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllPlanes )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllAxis )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllAxis )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllSketches )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllSketches )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllPlaces )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllPlaces )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllSurfaces )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllSurfaces )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllThreads )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllThreads )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllCurves )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllCurves )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllControlPoints )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllControlPoints )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Perspective )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Perspective )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawMode )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawMode )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShadedWireframe )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShadedWireframe )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CreateObjectsInCurrentLocalCS )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CreateObjectsInCurrentLocalCS )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllDimensions )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllDimensions )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllDesignations )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllDesignations )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllAuxiliaryGeom )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllAuxiliaryGeom )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideInComponentsMode )( 
            IPartDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideInComponentsMode )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SelectionManager )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChooseManager )( 
            IPartDocument __RPC_FAR * This,
            /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAttrEx )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ double AttrID,
            /* [in] */ BSTR Libname,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributesEx )( 
            IPartDocument __RPC_FAR * This,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IPartDocumentVtbl;

    interface IPartDocument
    {
        CONST_VTBL struct IPartDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPartDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPartDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPartDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPartDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPartDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IPartDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IPartDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IPartDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IPartDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IPartDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPartDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IPartDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IPartDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPartDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IPartDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IPartDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IPartDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IPartDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IPartDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IPartDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IPartDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IPartDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define IPartDocument_get_TopPart(This,Result)	\
    (This)->lpVtbl -> get_TopPart(This,Result)

#define IPartDocument_put_HideAllPlanes(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllPlanes(This,NewVal)

#define IPartDocument_get_HideAllPlanes(This,PVal)	\
    (This)->lpVtbl -> get_HideAllPlanes(This,PVal)

#define IPartDocument_put_HideAllAxis(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllAxis(This,NewVal)

#define IPartDocument_get_HideAllAxis(This,PVal)	\
    (This)->lpVtbl -> get_HideAllAxis(This,PVal)

#define IPartDocument_put_HideAllSketches(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllSketches(This,NewVal)

#define IPartDocument_get_HideAllSketches(This,PVal)	\
    (This)->lpVtbl -> get_HideAllSketches(This,PVal)

#define IPartDocument_put_HideAllPlaces(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllPlaces(This,NewVal)

#define IPartDocument_get_HideAllPlaces(This,PVal)	\
    (This)->lpVtbl -> get_HideAllPlaces(This,PVal)

#define IPartDocument_put_HideAllSurfaces(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllSurfaces(This,NewVal)

#define IPartDocument_get_HideAllSurfaces(This,PVal)	\
    (This)->lpVtbl -> get_HideAllSurfaces(This,PVal)

#define IPartDocument_put_HideAllThreads(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllThreads(This,NewVal)

#define IPartDocument_get_HideAllThreads(This,PVal)	\
    (This)->lpVtbl -> get_HideAllThreads(This,PVal)

#define IPartDocument_put_HideAllCurves(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllCurves(This,NewVal)

#define IPartDocument_get_HideAllCurves(This,PVal)	\
    (This)->lpVtbl -> get_HideAllCurves(This,PVal)

#define IPartDocument_put_HideAllControlPoints(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllControlPoints(This,NewVal)

#define IPartDocument_get_HideAllControlPoints(This,PVal)	\
    (This)->lpVtbl -> get_HideAllControlPoints(This,PVal)

#define IPartDocument_put_Perspective(This,NewVal)	\
    (This)->lpVtbl -> put_Perspective(This,NewVal)

#define IPartDocument_get_Perspective(This,PVal)	\
    (This)->lpVtbl -> get_Perspective(This,PVal)

#define IPartDocument_put_DrawMode(This,NewVal)	\
    (This)->lpVtbl -> put_DrawMode(This,NewVal)

#define IPartDocument_get_DrawMode(This,PVal)	\
    (This)->lpVtbl -> get_DrawMode(This,PVal)

#define IPartDocument_put_ShadedWireframe(This,NewVal)	\
    (This)->lpVtbl -> put_ShadedWireframe(This,NewVal)

#define IPartDocument_get_ShadedWireframe(This,PVal)	\
    (This)->lpVtbl -> get_ShadedWireframe(This,PVal)

#define IPartDocument_put_CreateObjectsInCurrentLocalCS(This,NewVal)	\
    (This)->lpVtbl -> put_CreateObjectsInCurrentLocalCS(This,NewVal)

#define IPartDocument_get_CreateObjectsInCurrentLocalCS(This,PVal)	\
    (This)->lpVtbl -> get_CreateObjectsInCurrentLocalCS(This,PVal)

#define IPartDocument_put_HideAllDimensions(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllDimensions(This,NewVal)

#define IPartDocument_get_HideAllDimensions(This,PVal)	\
    (This)->lpVtbl -> get_HideAllDimensions(This,PVal)

#define IPartDocument_put_HideAllDesignations(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllDesignations(This,NewVal)

#define IPartDocument_get_HideAllDesignations(This,PVal)	\
    (This)->lpVtbl -> get_HideAllDesignations(This,PVal)

#define IPartDocument_put_HideAllAuxiliaryGeom(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllAuxiliaryGeom(This,NewVal)

#define IPartDocument_get_HideAllAuxiliaryGeom(This,PVal)	\
    (This)->lpVtbl -> get_HideAllAuxiliaryGeom(This,PVal)

#define IPartDocument_put_HideInComponentsMode(This,NewVal)	\
    (This)->lpVtbl -> put_HideInComponentsMode(This,NewVal)

#define IPartDocument_get_HideInComponentsMode(This,PVal)	\
    (This)->lpVtbl -> get_HideInComponentsMode(This,PVal)

#define IPartDocument_get_SelectionManager(This,PVal)	\
    (This)->lpVtbl -> get_SelectionManager(This,PVal)

#define IPartDocument_get_ChooseManager(This,PVal)	\
    (This)->lpVtbl -> get_ChooseManager(This,PVal)

#define IPartDocument_CreateAttrEx(This,AttrID,Libname,Objects,SourcePart,Result)	\
    (This)->lpVtbl -> CreateAttrEx(This,AttrID,Libname,Objects,SourcePart,Result)

#define IPartDocument_get_AttributesEx(This,Key1,Key2,Key3,Key4,Numb,Objects,SourcePart,Result)	\
    (This)->lpVtbl -> get_AttributesEx(This,Key1,Key2,Key3,Key4,Numb,Objects,SourcePart,Result)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IPartDocument_INTERFACE_DEFINED__ */


#ifndef __IAssemblyDocument_INTERFACE_DEFINED__
#define __IAssemblyDocument_INTERFACE_DEFINED__

/* interface IAssemblyDocument */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IAssemblyDocument,0xF6B3F33A,0x3273,0x43ef,0x9B,0x8A,0x7C,0x0A,0xF8,0xFA,0xA1,0x29);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F6B3F33A-3273-43ef-9B8A-7C0AF8FAA129")
    IAssemblyDocument : public IKompasDocument3D
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAssemblyDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAssemblyDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAssemblyDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentType )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DocumentTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentFrames )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentFrames __RPC_FAR *__RPC_FAR *PFrames);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DocumentCloseOptions closeOptions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IAssemblyDocument __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveAs )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ BSTR PathName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Path )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Changed )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentSettings )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IDocumentSettings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDescriptions )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescriptions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutSheets )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheets __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserDataStoragesMng )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IUserDataStoragesMng __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TopPart )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllPlanes )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllPlanes )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllAxis )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllAxis )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllSketches )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllSketches )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllPlaces )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllPlaces )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllSurfaces )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllSurfaces )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllThreads )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllThreads )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllCurves )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllCurves )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllControlPoints )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllControlPoints )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Perspective )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Perspective )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawMode )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawMode )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShadedWireframe )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShadedWireframe )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CreateObjectsInCurrentLocalCS )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CreateObjectsInCurrentLocalCS )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllDimensions )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllDimensions )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllDesignations )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllDesignations )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideAllAuxiliaryGeom )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideAllAuxiliaryGeom )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HideInComponentsMode )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HideInComponentsMode )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SelectionManager )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ ISelectionManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChooseManager )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [retval][out] */ IChooseManager __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAttrEx )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ double AttrID,
            /* [in] */ BSTR Libname,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ IAttribute __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributesEx )( 
            IAssemblyDocument __RPC_FAR * This,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [in] */ double Numb,
            /* [in] */ VARIANT Objects,
            /* [in] */ IPart7 __RPC_FAR *SourcePart,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IAssemblyDocumentVtbl;

    interface IAssemblyDocument
    {
        CONST_VTBL struct IAssemblyDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IAssemblyDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAssemblyDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAssemblyDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAssemblyDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAssemblyDocument_get_DocumentType(This,Type)	\
    (This)->lpVtbl -> get_DocumentType(This,Type)

#define IAssemblyDocument_get_DocumentFrames(This,PFrames)	\
    (This)->lpVtbl -> get_DocumentFrames(This,PFrames)

#define IAssemblyDocument_Close(This,closeOptions,PRes)	\
    (This)->lpVtbl -> Close(This,closeOptions,PRes)

#define IAssemblyDocument_Save(This)	\
    (This)->lpVtbl -> Save(This)

#define IAssemblyDocument_SaveAs(This,PathName)	\
    (This)->lpVtbl -> SaveAs(This,PathName)

#define IAssemblyDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IAssemblyDocument_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IAssemblyDocument_get_Path(This,PVal)	\
    (This)->lpVtbl -> get_Path(This,PVal)

#define IAssemblyDocument_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IAssemblyDocument_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IAssemblyDocument_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define IAssemblyDocument_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IAssemblyDocument_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IAssemblyDocument_get_Changed(This,PVal)	\
    (This)->lpVtbl -> get_Changed(This,PVal)

#define IAssemblyDocument_get_DocumentSettings(This,PVal)	\
    (This)->lpVtbl -> get_DocumentSettings(This,PVal)

#define IAssemblyDocument_get_SpecificationDescriptions(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationDescriptions(This,PVal)

#define IAssemblyDocument_get_LayoutSheets(This,PVal)	\
    (This)->lpVtbl -> get_LayoutSheets(This,PVal)

#define IAssemblyDocument_get_UserDataStoragesMng(This,PVal)	\
    (This)->lpVtbl -> get_UserDataStoragesMng(This,PVal)


#define IAssemblyDocument_get_TopPart(This,Result)	\
    (This)->lpVtbl -> get_TopPart(This,Result)

#define IAssemblyDocument_put_HideAllPlanes(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllPlanes(This,NewVal)

#define IAssemblyDocument_get_HideAllPlanes(This,PVal)	\
    (This)->lpVtbl -> get_HideAllPlanes(This,PVal)

#define IAssemblyDocument_put_HideAllAxis(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllAxis(This,NewVal)

#define IAssemblyDocument_get_HideAllAxis(This,PVal)	\
    (This)->lpVtbl -> get_HideAllAxis(This,PVal)

#define IAssemblyDocument_put_HideAllSketches(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllSketches(This,NewVal)

#define IAssemblyDocument_get_HideAllSketches(This,PVal)	\
    (This)->lpVtbl -> get_HideAllSketches(This,PVal)

#define IAssemblyDocument_put_HideAllPlaces(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllPlaces(This,NewVal)

#define IAssemblyDocument_get_HideAllPlaces(This,PVal)	\
    (This)->lpVtbl -> get_HideAllPlaces(This,PVal)

#define IAssemblyDocument_put_HideAllSurfaces(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllSurfaces(This,NewVal)

#define IAssemblyDocument_get_HideAllSurfaces(This,PVal)	\
    (This)->lpVtbl -> get_HideAllSurfaces(This,PVal)

#define IAssemblyDocument_put_HideAllThreads(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllThreads(This,NewVal)

#define IAssemblyDocument_get_HideAllThreads(This,PVal)	\
    (This)->lpVtbl -> get_HideAllThreads(This,PVal)

#define IAssemblyDocument_put_HideAllCurves(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllCurves(This,NewVal)

#define IAssemblyDocument_get_HideAllCurves(This,PVal)	\
    (This)->lpVtbl -> get_HideAllCurves(This,PVal)

#define IAssemblyDocument_put_HideAllControlPoints(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllControlPoints(This,NewVal)

#define IAssemblyDocument_get_HideAllControlPoints(This,PVal)	\
    (This)->lpVtbl -> get_HideAllControlPoints(This,PVal)

#define IAssemblyDocument_put_Perspective(This,NewVal)	\
    (This)->lpVtbl -> put_Perspective(This,NewVal)

#define IAssemblyDocument_get_Perspective(This,PVal)	\
    (This)->lpVtbl -> get_Perspective(This,PVal)

#define IAssemblyDocument_put_DrawMode(This,NewVal)	\
    (This)->lpVtbl -> put_DrawMode(This,NewVal)

#define IAssemblyDocument_get_DrawMode(This,PVal)	\
    (This)->lpVtbl -> get_DrawMode(This,PVal)

#define IAssemblyDocument_put_ShadedWireframe(This,NewVal)	\
    (This)->lpVtbl -> put_ShadedWireframe(This,NewVal)

#define IAssemblyDocument_get_ShadedWireframe(This,PVal)	\
    (This)->lpVtbl -> get_ShadedWireframe(This,PVal)

#define IAssemblyDocument_put_CreateObjectsInCurrentLocalCS(This,NewVal)	\
    (This)->lpVtbl -> put_CreateObjectsInCurrentLocalCS(This,NewVal)

#define IAssemblyDocument_get_CreateObjectsInCurrentLocalCS(This,PVal)	\
    (This)->lpVtbl -> get_CreateObjectsInCurrentLocalCS(This,PVal)

#define IAssemblyDocument_put_HideAllDimensions(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllDimensions(This,NewVal)

#define IAssemblyDocument_get_HideAllDimensions(This,PVal)	\
    (This)->lpVtbl -> get_HideAllDimensions(This,PVal)

#define IAssemblyDocument_put_HideAllDesignations(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllDesignations(This,NewVal)

#define IAssemblyDocument_get_HideAllDesignations(This,PVal)	\
    (This)->lpVtbl -> get_HideAllDesignations(This,PVal)

#define IAssemblyDocument_put_HideAllAuxiliaryGeom(This,NewVal)	\
    (This)->lpVtbl -> put_HideAllAuxiliaryGeom(This,NewVal)

#define IAssemblyDocument_get_HideAllAuxiliaryGeom(This,PVal)	\
    (This)->lpVtbl -> get_HideAllAuxiliaryGeom(This,PVal)

#define IAssemblyDocument_put_HideInComponentsMode(This,NewVal)	\
    (This)->lpVtbl -> put_HideInComponentsMode(This,NewVal)

#define IAssemblyDocument_get_HideInComponentsMode(This,PVal)	\
    (This)->lpVtbl -> get_HideInComponentsMode(This,PVal)

#define IAssemblyDocument_get_SelectionManager(This,PVal)	\
    (This)->lpVtbl -> get_SelectionManager(This,PVal)

#define IAssemblyDocument_get_ChooseManager(This,PVal)	\
    (This)->lpVtbl -> get_ChooseManager(This,PVal)

#define IAssemblyDocument_CreateAttrEx(This,AttrID,Libname,Objects,SourcePart,Result)	\
    (This)->lpVtbl -> CreateAttrEx(This,AttrID,Libname,Objects,SourcePart,Result)

#define IAssemblyDocument_get_AttributesEx(This,Key1,Key2,Key3,Key4,Numb,Objects,SourcePart,Result)	\
    (This)->lpVtbl -> get_AttributesEx(This,Key1,Key2,Key3,Key4,Numb,Objects,SourcePart,Result)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAssemblyDocument_INTERFACE_DEFINED__ */


#ifndef __ISheetFormat_INTERFACE_DEFINED__
#define __ISheetFormat_INTERFACE_DEFINED__

/* interface ISheetFormat */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetFormat,0xB9CDE694,0x4C33,0x4375,0xA6,0xF6,0xAE,0x94,0xDC,0x75,0x95,0x10);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B9CDE694-4C33-4375-A6F6-AE94DC759510")
    ISheetFormat : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Format( 
            /* [retval][out] */ /* external definition not present */ ksDocumentFormatEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Format( 
            /* [in] */ /* external definition not present */ ksDocumentFormatEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FormatMultiplicity( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FormatMultiplicity( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VerticalOrientation( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VerticalOrientation( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FormatWidth( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FormatWidth( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FormatHeight( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FormatHeight( 
            /* [in] */ double Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetFormatVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetFormat __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetFormat __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetFormat __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Format )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDocumentFormatEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Format )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDocumentFormatEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FormatMultiplicity )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FormatMultiplicity )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VerticalOrientation )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VerticalOrientation )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FormatWidth )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FormatWidth )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FormatHeight )( 
            ISheetFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FormatHeight )( 
            ISheetFormat __RPC_FAR * This,
            /* [in] */ double Val);
        
        END_INTERFACE
    } ISheetFormatVtbl;

    interface ISheetFormat
    {
        CONST_VTBL struct ISheetFormatVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ISheetFormat_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetFormat_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetFormat_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetFormat_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetFormat_get_Format(This,pVal)	\
    (This)->lpVtbl -> get_Format(This,pVal)

#define ISheetFormat_put_Format(This,Val)	\
    (This)->lpVtbl -> put_Format(This,Val)

#define ISheetFormat_get_FormatMultiplicity(This,pVal)	\
    (This)->lpVtbl -> get_FormatMultiplicity(This,pVal)

#define ISheetFormat_put_FormatMultiplicity(This,Val)	\
    (This)->lpVtbl -> put_FormatMultiplicity(This,Val)

#define ISheetFormat_get_VerticalOrientation(This,pVal)	\
    (This)->lpVtbl -> get_VerticalOrientation(This,pVal)

#define ISheetFormat_put_VerticalOrientation(This,Val)	\
    (This)->lpVtbl -> put_VerticalOrientation(This,Val)

#define ISheetFormat_get_FormatWidth(This,pVal)	\
    (This)->lpVtbl -> get_FormatWidth(This,pVal)

#define ISheetFormat_put_FormatWidth(This,Val)	\
    (This)->lpVtbl -> put_FormatWidth(This,Val)

#define ISheetFormat_get_FormatHeight(This,pVal)	\
    (This)->lpVtbl -> get_FormatHeight(This,pVal)

#define ISheetFormat_put_FormatHeight(This,Val)	\
    (This)->lpVtbl -> put_FormatHeight(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetFormat_get_Format_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDocumentFormatEnum __RPC_FAR *pVal);


void __RPC_STUB ISheetFormat_get_Format_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetFormat_put_Format_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDocumentFormatEnum Val);


void __RPC_STUB ISheetFormat_put_Format_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetFormat_get_FormatMultiplicity_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISheetFormat_get_FormatMultiplicity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetFormat_put_FormatMultiplicity_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISheetFormat_put_FormatMultiplicity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetFormat_get_VerticalOrientation_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISheetFormat_get_VerticalOrientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetFormat_put_VerticalOrientation_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISheetFormat_put_VerticalOrientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetFormat_get_FormatWidth_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ISheetFormat_get_FormatWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetFormat_put_FormatWidth_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ISheetFormat_put_FormatWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetFormat_get_FormatHeight_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ISheetFormat_get_FormatHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetFormat_put_FormatHeight_Proxy( 
    ISheetFormat __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ISheetFormat_put_FormatHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetFormat_INTERFACE_DEFINED__ */


#ifndef __IKompasError_INTERFACE_DEFINED__
#define __IKompasError_INTERFACE_DEFINED__

/* interface IKompasError */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IKompasError,0x0A8B4CD1,0x7158,0x4ce6,0x96,0xE0,0x88,0x53,0x76,0xF5,0xDE,0x1B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0A8B4CD1-7158-4ce6-96E0-885376F5DE1B")
    IKompasError : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Code( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Error3D( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Report( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasErrorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasError __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasError __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasError __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasError __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasError __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasError __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasError __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Code )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Description )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Error3D )( 
            IKompasError __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Report )( 
            IKompasError __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IKompasError __RPC_FAR * This);
        
        END_INTERFACE
    } IKompasErrorVtbl;

    interface IKompasError
    {
        CONST_VTBL struct IKompasErrorVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IKompasError_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IKompasError_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IKompasError_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IKompasError_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IKompasError_get_Code(This,pVal)	\
    (This)->lpVtbl -> get_Code(This,pVal)

#define IKompasError_get_Description(This,pVal)	\
    (This)->lpVtbl -> get_Description(This,pVal)

#define IKompasError_get_Error3D(This,pVal)	\
    (This)->lpVtbl -> get_Error3D(This,pVal)

#define IKompasError_Report(This)	\
    (This)->lpVtbl -> Report(This)

#define IKompasError_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasError_get_Code_Proxy( 
    IKompasError __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IKompasError_get_Code_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasError_get_Description_Proxy( 
    IKompasError __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IKompasError_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasError_get_Error3D_Proxy( 
    IKompasError __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IKompasError_get_Error3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasError_Report_Proxy( 
    IKompasError __RPC_FAR * This);


void __RPC_STUB IKompasError_Report_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IKompasError_Clear_Proxy( 
    IKompasError __RPC_FAR * This);


void __RPC_STUB IKompasError_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasError_INTERFACE_DEFINED__ */


#ifndef __ILayoutSheets_INTERFACE_DEFINED__
#define __ILayoutSheets_INTERFACE_DEFINED__

/* interface ILayoutSheets */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayoutSheets,0x7AB54196,0x0B76,0x4b01,0xB7,0x69,0x7F,0x47,0x63,0x71,0x73,0xC4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7AB54196-0B76-4b01-B769-7F47637173C4")
    ILayoutSheets : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemByNumber( 
            /* [in] */ long Number,
            /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayoutSheetsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayoutSheets __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayoutSheets __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayoutSheets __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayoutSheets __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayoutSheets __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayoutSheets __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayoutSheets __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILayoutSheets __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemByNumber )( 
            ILayoutSheets __RPC_FAR * This,
            /* [in] */ long Number,
            /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILayoutSheets __RPC_FAR * This,
            /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ILayoutSheetsVtbl;

    interface ILayoutSheets
    {
        CONST_VTBL struct ILayoutSheetsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ILayoutSheets_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayoutSheets_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayoutSheets_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayoutSheets_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayoutSheets_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILayoutSheets_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILayoutSheets_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ILayoutSheets_get_ItemByNumber(This,Number,Result)	\
    (This)->lpVtbl -> get_ItemByNumber(This,Number,Result)

#define ILayoutSheets_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayoutSheets_get_Item_Proxy( 
    ILayoutSheets __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayoutSheets_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayoutSheets_get_ItemByNumber_Proxy( 
    ILayoutSheets __RPC_FAR * This,
    /* [in] */ long Number,
    /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayoutSheets_get_ItemByNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayoutSheets_Add_Proxy( 
    ILayoutSheets __RPC_FAR * This,
    /* [retval][out] */ ILayoutSheet __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayoutSheets_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayoutSheets_INTERFACE_DEFINED__ */


#ifndef __ILayoutSheet_INTERFACE_DEFINED__
#define __ILayoutSheet_INTERFACE_DEFINED__

/* interface ILayoutSheet */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayoutSheet,0xD87B5A80,0xCF52,0x4510,0xAD,0xD9,0xD1,0x34,0x4F,0xFF,0xFC,0x07);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D87B5A80-CF52-4510-ADD9-D1344FFFFC07")
    ILayoutSheet : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Format( 
            /* [retval][out] */ ISheetFormat __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutLibraryFileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayoutLibraryFileName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutStyleNumber( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayoutStyleNumber( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Stamp( 
            /* [retval][out] */ IStamp __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayoutSheetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayoutSheet __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayoutSheet __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayoutSheet __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayoutSheet __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayoutSheet __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayoutSheet __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayoutSheet __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Format )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ ISheetFormat __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutLibraryFileName )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayoutLibraryFileName )( 
            ILayoutSheet __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutStyleNumber )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayoutStyleNumber )( 
            ILayoutSheet __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Stamp )( 
            ILayoutSheet __RPC_FAR * This,
            /* [retval][out] */ IStamp __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } ILayoutSheetVtbl;

    interface ILayoutSheet
    {
        CONST_VTBL struct ILayoutSheetVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ILayoutSheet_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayoutSheet_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayoutSheet_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayoutSheet_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayoutSheet_get_Format(This,PVal)	\
    (This)->lpVtbl -> get_Format(This,PVal)

#define ILayoutSheet_get_LayoutLibraryFileName(This,PVal)	\
    (This)->lpVtbl -> get_LayoutLibraryFileName(This,PVal)

#define ILayoutSheet_put_LayoutLibraryFileName(This,Val)	\
    (This)->lpVtbl -> put_LayoutLibraryFileName(This,Val)

#define ILayoutSheet_get_LayoutStyleNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayoutStyleNumber(This,PVal)

#define ILayoutSheet_put_LayoutStyleNumber(This,Val)	\
    (This)->lpVtbl -> put_LayoutStyleNumber(This,Val)

#define ILayoutSheet_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ILayoutSheet_Delete(This,PVal)	\
    (This)->lpVtbl -> Delete(This,PVal)

#define ILayoutSheet_get_Stamp(This,pVal)	\
    (This)->lpVtbl -> get_Stamp(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_get_Format_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [retval][out] */ ISheetFormat __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILayoutSheet_get_Format_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_get_LayoutLibraryFileName_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayoutSheet_get_LayoutLibraryFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_put_LayoutLibraryFileName_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ILayoutSheet_put_LayoutLibraryFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_get_LayoutStyleNumber_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILayoutSheet_get_LayoutStyleNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_put_LayoutStyleNumber_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ILayoutSheet_put_LayoutStyleNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_Update_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ILayoutSheet_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_Delete_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILayoutSheet_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayoutSheet_get_Stamp_Proxy( 
    ILayoutSheet __RPC_FAR * This,
    /* [retval][out] */ IStamp __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ILayoutSheet_get_Stamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayoutSheet_INTERFACE_DEFINED__ */


#ifndef __ICheckSum_INTERFACE_DEFINED__
#define __ICheckSum_INTERFACE_DEFINED__

/* interface ICheckSum */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICheckSum,0x2AA9F713,0x2328,0x4e8f,0xB9,0x96,0x9D,0xFD,0xAB,0xC6,0x7D,0xC9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2AA9F713-2328-4e8f-B996-9DFDABC67DC9")
    ICheckSum : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT Value,
            /* [in] */ VARIANT_BOOL Com) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Result( 
            /* [retval][out] */ VARIANT __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StrResult( 
            /* [retval][out] */ BSTR __RPC_FAR *StrVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddInterface( 
            /* [in] */ IUnknown __RPC_FAR *Object,
            /* [in] */ VARIANT_BOOL Com,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddReference( 
            /* [in] */ long Object,
            /* [defaultvalue][in] */ long Doc,
            /* [in] */ VARIANT_BOOL Com,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Version( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Version( 
            /* [in] */ long Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICheckSumVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICheckSum __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICheckSum __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICheckSum __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ VARIANT Value,
            /* [in] */ VARIANT_BOOL Com);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Result )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StrResult )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *StrVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddInterface )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ IUnknown __RPC_FAR *Object,
            /* [in] */ VARIANT_BOOL Com,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddReference )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ long Object,
            /* [defaultvalue][in] */ long Doc,
            /* [in] */ VARIANT_BOOL Com,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            ICheckSum __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Version )( 
            ICheckSum __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Version )( 
            ICheckSum __RPC_FAR * This,
            /* [in] */ long Val);
        
        END_INTERFACE
    } ICheckSumVtbl;

    interface ICheckSum
    {
        CONST_VTBL struct ICheckSumVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ICheckSum_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICheckSum_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICheckSum_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICheckSum_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICheckSum_Add(This,Value,Com)	\
    (This)->lpVtbl -> Add(This,Value,Com)

#define ICheckSum_get_Result(This,Value)	\
    (This)->lpVtbl -> get_Result(This,Value)

#define ICheckSum_get_StrResult(This,StrVal)	\
    (This)->lpVtbl -> get_StrResult(This,StrVal)

#define ICheckSum_AddInterface(This,Object,Com,Res)	\
    (This)->lpVtbl -> AddInterface(This,Object,Com,Res)

#define ICheckSum_AddReference(This,Object,Doc,Com,Res)	\
    (This)->lpVtbl -> AddReference(This,Object,Doc,Com,Res)

#define ICheckSum_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define ICheckSum_get_Version(This,PVal)	\
    (This)->lpVtbl -> get_Version(This,PVal)

#define ICheckSum_put_Version(This,Val)	\
    (This)->lpVtbl -> put_Version(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICheckSum_Add_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [in] */ VARIANT Value,
    /* [in] */ VARIANT_BOOL Com);


void __RPC_STUB ICheckSum_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICheckSum_get_Result_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Value);


void __RPC_STUB ICheckSum_get_Result_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICheckSum_get_StrResult_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *StrVal);


void __RPC_STUB ICheckSum_get_StrResult_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICheckSum_AddInterface_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [in] */ IUnknown __RPC_FAR *Object,
    /* [in] */ VARIANT_BOOL Com,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB ICheckSum_AddInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICheckSum_AddReference_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [in] */ long Object,
    /* [defaultvalue][in] */ long Doc,
    /* [in] */ VARIANT_BOOL Com,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB ICheckSum_AddReference_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICheckSum_Clear_Proxy( 
    ICheckSum __RPC_FAR * This);


void __RPC_STUB ICheckSum_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICheckSum_get_Version_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ICheckSum_get_Version_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICheckSum_put_Version_Proxy( 
    ICheckSum __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ICheckSum_put_Version_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICheckSum_INTERFACE_DEFINED__ */


#ifndef __IProgressBarIndicator_INTERFACE_DEFINED__
#define __IProgressBarIndicator_INTERFACE_DEFINED__

/* interface IProgressBarIndicator */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProgressBarIndicator,0xBE125ABA,0xEAB2,0x4a22,0x99,0xD7,0x10,0x8C,0x84,0xB6,0xDC,0xC5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BE125ABA-EAB2-4a22-99D7-108C84B6DCC5")
    IProgressBarIndicator : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Start( 
            /* [in] */ long MinVal,
            /* [in] */ long MaxVal,
            /* [in] */ BSTR TextVal,
            /* [in] */ VARIANT_BOOL ResetVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetProgress( 
            /* [in] */ long CurrentVal,
            /* [in] */ BSTR TextVal,
            /* [in] */ VARIANT_BOOL ResetVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetText( 
            /* [in] */ BSTR TextVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Stop( 
            /* [in] */ BSTR TextVal,
            /* [in] */ VARIANT_BOOL ResetVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProgressBarIndicatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProgressBarIndicator __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProgressBarIndicator __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Start )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ long MinVal,
            /* [in] */ long MaxVal,
            /* [in] */ BSTR TextVal,
            /* [in] */ VARIANT_BOOL ResetVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetProgress )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ long CurrentVal,
            /* [in] */ BSTR TextVal,
            /* [in] */ VARIANT_BOOL ResetVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetText )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ BSTR TextVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Stop )( 
            IProgressBarIndicator __RPC_FAR * This,
            /* [in] */ BSTR TextVal,
            /* [in] */ VARIANT_BOOL ResetVal);
        
        END_INTERFACE
    } IProgressBarIndicatorVtbl;

    interface IProgressBarIndicator
    {
        CONST_VTBL struct IProgressBarIndicatorVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IProgressBarIndicator_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProgressBarIndicator_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProgressBarIndicator_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProgressBarIndicator_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProgressBarIndicator_Start(This,MinVal,MaxVal,TextVal,ResetVal)	\
    (This)->lpVtbl -> Start(This,MinVal,MaxVal,TextVal,ResetVal)

#define IProgressBarIndicator_SetProgress(This,CurrentVal,TextVal,ResetVal)	\
    (This)->lpVtbl -> SetProgress(This,CurrentVal,TextVal,ResetVal)

#define IProgressBarIndicator_SetText(This,TextVal)	\
    (This)->lpVtbl -> SetText(This,TextVal)

#define IProgressBarIndicator_Stop(This,TextVal,ResetVal)	\
    (This)->lpVtbl -> Stop(This,TextVal,ResetVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProgressBarIndicator_Start_Proxy( 
    IProgressBarIndicator __RPC_FAR * This,
    /* [in] */ long MinVal,
    /* [in] */ long MaxVal,
    /* [in] */ BSTR TextVal,
    /* [in] */ VARIANT_BOOL ResetVal);


void __RPC_STUB IProgressBarIndicator_Start_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProgressBarIndicator_SetProgress_Proxy( 
    IProgressBarIndicator __RPC_FAR * This,
    /* [in] */ long CurrentVal,
    /* [in] */ BSTR TextVal,
    /* [in] */ VARIANT_BOOL ResetVal);


void __RPC_STUB IProgressBarIndicator_SetProgress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProgressBarIndicator_SetText_Proxy( 
    IProgressBarIndicator __RPC_FAR * This,
    /* [in] */ BSTR TextVal);


void __RPC_STUB IProgressBarIndicator_SetText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProgressBarIndicator_Stop_Proxy( 
    IProgressBarIndicator __RPC_FAR * This,
    /* [in] */ BSTR TextVal,
    /* [in] */ VARIANT_BOOL ResetVal);


void __RPC_STUB IProgressBarIndicator_Stop_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProgressBarIndicator_INTERFACE_DEFINED__ */


#ifndef __IUserDataStoragesMng_INTERFACE_DEFINED__
#define __IUserDataStoragesMng_INTERFACE_DEFINED__

/* interface IUserDataStoragesMng */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUserDataStoragesMng,0x77A6D4CA,0x6418,0x4dee,0xB5,0x9C,0x40,0x0B,0xFD,0x05,0x23,0x75);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("77A6D4CA-6418-4dee-B59C-400BFD052375")
    IUserDataStoragesMng : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUserDataStorages __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ IKompasAPIObject __RPC_FAR *Object,
            /* [retval][out] */ IUserDataStorages __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUserDataStoragesMngVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUserDataStoragesMng __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUserDataStoragesMng __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUserDataStorages __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ IKompasAPIObject __RPC_FAR *Object,
            /* [retval][out] */ IUserDataStorages __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IUserDataStoragesMng __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } IUserDataStoragesMngVtbl;

    interface IUserDataStoragesMng
    {
        CONST_VTBL struct IUserDataStoragesMngVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IUserDataStoragesMng_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUserDataStoragesMng_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUserDataStoragesMng_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUserDataStoragesMng_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUserDataStoragesMng_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IUserDataStoragesMng_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IUserDataStoragesMng_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IUserDataStoragesMng_Add(This,Object,Result)	\
    (This)->lpVtbl -> Add(This,Object,Result)

#define IUserDataStoragesMng_Delete(This,Index,pVal)	\
    (This)->lpVtbl -> Delete(This,Index,pVal)

#define IUserDataStoragesMng_Clear(This,pVal)	\
    (This)->lpVtbl -> Clear(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUserDataStoragesMng_get_Item_Proxy( 
    IUserDataStoragesMng __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IUserDataStorages __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IUserDataStoragesMng_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStoragesMng_Add_Proxy( 
    IUserDataStoragesMng __RPC_FAR * This,
    /* [in] */ IKompasAPIObject __RPC_FAR *Object,
    /* [retval][out] */ IUserDataStorages __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IUserDataStoragesMng_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStoragesMng_Delete_Proxy( 
    IUserDataStoragesMng __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IUserDataStoragesMng_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStoragesMng_Clear_Proxy( 
    IUserDataStoragesMng __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IUserDataStoragesMng_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUserDataStoragesMng_INTERFACE_DEFINED__ */


#ifndef __IUserDataStorages_INTERFACE_DEFINED__
#define __IUserDataStorages_INTERFACE_DEFINED__

/* interface IUserDataStorages */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUserDataStorages,0x9DBFB4EB,0xBE9F,0x46ef,0x88,0xFF,0xBB,0x60,0x3A,0x9E,0x78,0x6B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9DBFB4EB-BE9F-46ef-88FF-BB603A9E786B")
    IUserDataStorages : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUserDataStorage __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR StorageName,
            /* [retval][out] */ IUserDataStorage __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUserDataStoragesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUserDataStorages __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUserDataStorages __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUserDataStorages __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUserDataStorages __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUserDataStorages __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUserDataStorages __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUserDataStorages __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IUserDataStorages __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IUserDataStorages __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUserDataStorage __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ BSTR StorageName,
            /* [retval][out] */ IUserDataStorage __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IUserDataStorages __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IUserDataStoragesVtbl;

    interface IUserDataStorages
    {
        CONST_VTBL struct IUserDataStoragesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IUserDataStorages_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUserDataStorages_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUserDataStorages_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUserDataStorages_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUserDataStorages_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IUserDataStorages_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IUserDataStorages_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IUserDataStorages_Add(This,StorageName,Result)	\
    (This)->lpVtbl -> Add(This,StorageName,Result)

#define IUserDataStorages_Delete(This,Password,Index,PVal)	\
    (This)->lpVtbl -> Delete(This,Password,Index,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUserDataStorages_get_Item_Proxy( 
    IUserDataStorages __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IUserDataStorage __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IUserDataStorages_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorages_Add_Proxy( 
    IUserDataStorages __RPC_FAR * This,
    /* [in] */ BSTR StorageName,
    /* [retval][out] */ IUserDataStorage __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IUserDataStorages_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorages_Delete_Proxy( 
    IUserDataStorages __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IUserDataStorages_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUserDataStorages_INTERFACE_DEFINED__ */


#ifndef __IUserDataStorage_INTERFACE_DEFINED__
#define __IUserDataStorage_INTERFACE_DEFINED__

/* interface IUserDataStorage */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUserDataStorage,0xDD2AF5C4,0xD5B9,0x420d,0xB6,0x58,0xF9,0x35,0xF8,0x0A,0x85,0x86);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DD2AF5C4-D5B9-420d-B658-F935F80A8586")
    IUserDataStorage : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [in] */ BSTR Pass,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Pass,
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPassword( 
            /* [in] */ BSTR OldPass,
            /* [in] */ BSTR NewPass,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Version( 
            /* [in] */ BSTR Pass,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Version( 
            /* [in] */ BSTR Pass,
            /* [in] */ long PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetObject( 
            /* [in] */ VARIANT Index,
            /* [out] */ VARIANT __RPC_FAR *Object,
            /* [out] */ long __RPC_FAR *Numb,
            /* [retval][out] */ BSTR __RPC_FAR *Comment) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetObject( 
            /* [in] */ BSTR Pass,
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT Object,
            /* [in] */ BSTR Comment,
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddObject( 
            /* [in] */ BSTR Pass,
            /* [in] */ VARIANT Object,
            /* [in] */ BSTR Comment,
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ BSTR Pass,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [in] */ BSTR Pass,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUserDataStorageVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUserDataStorage __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUserDataStorage __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUserDataStorage __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUserDataStorage __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUserDataStorage __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUserDataStorage __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUserDataStorage __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPassword )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR OldPass,
            /* [in] */ BSTR NewPass,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Version )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Version )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObject )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [out] */ VARIANT __RPC_FAR *Object,
            /* [out] */ long __RPC_FAR *Numb,
            /* [retval][out] */ BSTR __RPC_FAR *Comment);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObject )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT Object,
            /* [in] */ BSTR Comment,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddObject )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [in] */ VARIANT Object,
            /* [in] */ BSTR Comment,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IUserDataStorage __RPC_FAR * This,
            /* [in] */ BSTR Pass,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IUserDataStorageVtbl;

    interface IUserDataStorage
    {
        CONST_VTBL struct IUserDataStorageVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IUserDataStorage_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUserDataStorage_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUserDataStorage_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUserDataStorage_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUserDataStorage_get_Name(This,Pass,PVal)	\
    (This)->lpVtbl -> get_Name(This,Pass,PVal)

#define IUserDataStorage_put_Name(This,Pass,PVal)	\
    (This)->lpVtbl -> put_Name(This,Pass,PVal)

#define IUserDataStorage_SetPassword(This,OldPass,NewPass,Result)	\
    (This)->lpVtbl -> SetPassword(This,OldPass,NewPass,Result)

#define IUserDataStorage_get_Version(This,Pass,PVal)	\
    (This)->lpVtbl -> get_Version(This,Pass,PVal)

#define IUserDataStorage_put_Version(This,Pass,PVal)	\
    (This)->lpVtbl -> put_Version(This,Pass,PVal)

#define IUserDataStorage_GetObject(This,Index,Object,Numb,Comment)	\
    (This)->lpVtbl -> GetObject(This,Index,Object,Numb,Comment)

#define IUserDataStorage_SetObject(This,Pass,Index,Object,Comment,pVal)	\
    (This)->lpVtbl -> SetObject(This,Pass,Index,Object,Comment,pVal)

#define IUserDataStorage_AddObject(This,Pass,Object,Comment,pVal)	\
    (This)->lpVtbl -> AddObject(This,Pass,Object,Comment,pVal)

#define IUserDataStorage_Delete(This,Pass,Index,PVal)	\
    (This)->lpVtbl -> Delete(This,Pass,Index,PVal)

#define IUserDataStorage_Clear(This,Pass,Result)	\
    (This)->lpVtbl -> Clear(This,Pass,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_get_Name_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IUserDataStorage_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_put_Name_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [in] */ BSTR PVal);


void __RPC_STUB IUserDataStorage_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_SetPassword_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR OldPass,
    /* [in] */ BSTR NewPass,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IUserDataStorage_SetPassword_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_get_Version_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IUserDataStorage_get_Version_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_put_Version_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [in] */ long PVal);


void __RPC_STUB IUserDataStorage_put_Version_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_GetObject_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [out] */ VARIANT __RPC_FAR *Object,
    /* [out] */ long __RPC_FAR *Numb,
    /* [retval][out] */ BSTR __RPC_FAR *Comment);


void __RPC_STUB IUserDataStorage_GetObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_SetObject_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [in] */ VARIANT Index,
    /* [in] */ VARIANT Object,
    /* [in] */ BSTR Comment,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IUserDataStorage_SetObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_AddObject_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [in] */ VARIANT Object,
    /* [in] */ BSTR Comment,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IUserDataStorage_AddObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_Delete_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IUserDataStorage_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUserDataStorage_Clear_Proxy( 
    IUserDataStorage __RPC_FAR * This,
    /* [in] */ BSTR Pass,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IUserDataStorage_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUserDataStorage_INTERFACE_DEFINED__ */


#ifndef __IParametriticConstraint_INTERFACE_DEFINED__
#define __IParametriticConstraint_INTERFACE_DEFINED__

/* interface IParametriticConstraint */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IParametriticConstraint,0x131069F4,0xA4E2,0x4db4,0xA5,0x59,0x85,0xEA,0xCC,0xC7,0x4C,0xE4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("131069F4-A4E2-4db4-A559-85EACCC74CE4")
    IParametriticConstraint : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ConstraintType( 
            /* [in] */ /* external definition not present */ ksConstraintTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConstraintType( 
            /* [retval][out] */ /* external definition not present */ ksConstraintTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Index( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Index( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Partner( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Partner( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PartnerIndex( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PartnerIndex( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Expression( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Expression( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Variable( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variable( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Degrees( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Degrees( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Minutes( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Minutes( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Seconds( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Seconds( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Create( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Valid( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Axis( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Axis( 
            /* [in] */ IDrawingObject __RPC_FAR *NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IParametriticConstraintVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IParametriticConstraint __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IParametriticConstraint __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ConstraintType )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksConstraintTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ConstraintType )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksConstraintTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Index )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Index )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Partner )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Partner )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PartnerIndex )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PartnerIndex )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Expression )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Expression )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Variable )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variable )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Degrees )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Degrees )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Minutes )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Minutes )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Seconds )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Seconds )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Create )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Axis )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Axis )( 
            IParametriticConstraint __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *NewVal);
        
        END_INTERFACE
    } IParametriticConstraintVtbl;

    interface IParametriticConstraint
    {
        CONST_VTBL struct IParametriticConstraintVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IParametriticConstraint_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IParametriticConstraint_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IParametriticConstraint_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IParametriticConstraint_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IParametriticConstraint_put_ConstraintType(This,NewVal)	\
    (This)->lpVtbl -> put_ConstraintType(This,NewVal)

#define IParametriticConstraint_get_ConstraintType(This,PVal)	\
    (This)->lpVtbl -> get_ConstraintType(This,PVal)

#define IParametriticConstraint_put_Index(This,NewVal)	\
    (This)->lpVtbl -> put_Index(This,NewVal)

#define IParametriticConstraint_get_Index(This,PVal)	\
    (This)->lpVtbl -> get_Index(This,PVal)

#define IParametriticConstraint_put_Partner(This,NewVal)	\
    (This)->lpVtbl -> put_Partner(This,NewVal)

#define IParametriticConstraint_get_Partner(This,PVal)	\
    (This)->lpVtbl -> get_Partner(This,PVal)

#define IParametriticConstraint_put_PartnerIndex(This,NewVal)	\
    (This)->lpVtbl -> put_PartnerIndex(This,NewVal)

#define IParametriticConstraint_get_PartnerIndex(This,PVal)	\
    (This)->lpVtbl -> get_PartnerIndex(This,PVal)

#define IParametriticConstraint_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IParametriticConstraint_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IParametriticConstraint_put_Expression(This,NewVal)	\
    (This)->lpVtbl -> put_Expression(This,NewVal)

#define IParametriticConstraint_get_Expression(This,PVal)	\
    (This)->lpVtbl -> get_Expression(This,PVal)

#define IParametriticConstraint_put_Comment(This,NewVal)	\
    (This)->lpVtbl -> put_Comment(This,NewVal)

#define IParametriticConstraint_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#define IParametriticConstraint_put_Variable(This,NewVal)	\
    (This)->lpVtbl -> put_Variable(This,NewVal)

#define IParametriticConstraint_get_Variable(This,PVal)	\
    (This)->lpVtbl -> get_Variable(This,PVal)

#define IParametriticConstraint_put_Degrees(This,NewVal)	\
    (This)->lpVtbl -> put_Degrees(This,NewVal)

#define IParametriticConstraint_get_Degrees(This,PVal)	\
    (This)->lpVtbl -> get_Degrees(This,PVal)

#define IParametriticConstraint_put_Minutes(This,NewVal)	\
    (This)->lpVtbl -> put_Minutes(This,NewVal)

#define IParametriticConstraint_get_Minutes(This,PVal)	\
    (This)->lpVtbl -> get_Minutes(This,PVal)

#define IParametriticConstraint_put_Seconds(This,NewVal)	\
    (This)->lpVtbl -> put_Seconds(This,NewVal)

#define IParametriticConstraint_get_Seconds(This,PVal)	\
    (This)->lpVtbl -> get_Seconds(This,PVal)

#define IParametriticConstraint_Delete(This,PVal)	\
    (This)->lpVtbl -> Delete(This,PVal)

#define IParametriticConstraint_Create(This,PVal)	\
    (This)->lpVtbl -> Create(This,PVal)

#define IParametriticConstraint_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IParametriticConstraint_get_Axis(This,PVal)	\
    (This)->lpVtbl -> get_Axis(This,PVal)

#define IParametriticConstraint_put_Axis(This,NewVal)	\
    (This)->lpVtbl -> put_Axis(This,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_ConstraintType_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksConstraintTypeEnum NewVal);


void __RPC_STUB IParametriticConstraint_put_ConstraintType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_ConstraintType_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksConstraintTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_ConstraintType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Index_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IParametriticConstraint_put_Index_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Index_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Index_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Partner_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB IParametriticConstraint_put_Partner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Partner_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Partner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_PartnerIndex_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IParametriticConstraint_put_PartnerIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_PartnerIndex_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_PartnerIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Value_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IParametriticConstraint_put_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Value_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Expression_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IParametriticConstraint_put_Expression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Expression_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Expression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Comment_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IParametriticConstraint_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Comment_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Variable_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IParametriticConstraint_put_Variable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Variable_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Variable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Degrees_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IParametriticConstraint_put_Degrees_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Degrees_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Degrees_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Minutes_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IParametriticConstraint_put_Minutes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Minutes_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Minutes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Seconds_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IParametriticConstraint_put_Seconds_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Seconds_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Seconds_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_Delete_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_Create_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_Create_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Valid_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Valid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_get_Axis_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IParametriticConstraint_get_Axis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IParametriticConstraint_put_Axis_Proxy( 
    IParametriticConstraint __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *NewVal);


void __RPC_STUB IParametriticConstraint_put_Axis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IParametriticConstraint_INTERFACE_DEFINED__ */


#ifndef __IDimensionText_INTERFACE_DEFINED__
#define __IDimensionText_INTERFACE_DEFINED__

/* interface IDimensionText */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDimensionText,0xE0197BA7,0xC3FB,0x44a3,0x9C,0x13,0x49,0x11,0x5A,0x15,0x0E,0xD2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E0197BA7-C3FB-44a3-9C13-49115A150ED2")
    IDimensionText : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sign( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sign( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignFont( 
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignFont( 
            /* [in] */ BSTR Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NominalValue( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NominalValue( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoNominalValue( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoNominalValue( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToleranceOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToleranceOn( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeviationOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeviationOn( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeviationType( 
            /* [retval][out] */ /* external definition not present */ ksDimensionDeviationEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeviationType( 
            /* [in] */ /* external definition not present */ ksDimensionDeviationEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rectangle( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Rectangle( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnderLine( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnderLine( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Brackets( 
            /* [retval][out] */ /* external definition not present */ ksDimensionTextBracketsEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Brackets( 
            /* [in] */ /* external definition not present */ ksDimensionTextBracketsEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAlign( 
            /* [retval][out] */ /* external definition not present */ ksDimensionTextAlignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextAlign( 
            /* [in] */ /* external definition not present */ ksDimensionTextAlignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Prefix( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NominalText( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tolerance( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Tolerance( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HighDeviation( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LowDeviation( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Unit( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Suffix( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUnder( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextFormat( 
            /* [retval][out] */ /* external definition not present */ ksDimTextFormatEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextFormat( 
            /* [in] */ /* external definition not present */ ksDimTextFormatEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDimensionTextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDimensionText __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDimensionText __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDimensionText __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sign )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sign )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignFont )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignFont )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NominalValue )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NominalValue )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoNominalValue )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoNominalValue )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ToleranceOn )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ToleranceOn )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeviationOn )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeviationOn )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeviationType )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionDeviationEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeviationType )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionDeviationEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rectangle )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Rectangle )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnderLine )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UnderLine )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Brackets )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionTextBracketsEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Brackets )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionTextBracketsEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAlign )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionTextAlignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextAlign )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionTextAlignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Prefix )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NominalText )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tolerance )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tolerance )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HighDeviation )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LowDeviation )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Unit )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Suffix )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnder )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextFormat )( 
            IDimensionText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimTextFormatEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextFormat )( 
            IDimensionText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimTextFormatEnum Value);
        
        END_INTERFACE
    } IDimensionTextVtbl;

    interface IDimensionText
    {
        CONST_VTBL struct IDimensionTextVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDimensionText_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IDimensionText_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IDimensionText_get_Sign(This,Result)	\
    (This)->lpVtbl -> get_Sign(This,Result)

#define IDimensionText_put_Sign(This,Value)	\
    (This)->lpVtbl -> put_Sign(This,Value)

#define IDimensionText_get_SignFont(This,Result)	\
    (This)->lpVtbl -> get_SignFont(This,Result)

#define IDimensionText_put_SignFont(This,Value)	\
    (This)->lpVtbl -> put_SignFont(This,Value)

#define IDimensionText_get_NominalValue(This,Result)	\
    (This)->lpVtbl -> get_NominalValue(This,Result)

#define IDimensionText_put_NominalValue(This,Value)	\
    (This)->lpVtbl -> put_NominalValue(This,Value)

#define IDimensionText_get_AutoNominalValue(This,Result)	\
    (This)->lpVtbl -> get_AutoNominalValue(This,Result)

#define IDimensionText_put_AutoNominalValue(This,Value)	\
    (This)->lpVtbl -> put_AutoNominalValue(This,Value)

#define IDimensionText_get_ToleranceOn(This,Result)	\
    (This)->lpVtbl -> get_ToleranceOn(This,Result)

#define IDimensionText_put_ToleranceOn(This,Value)	\
    (This)->lpVtbl -> put_ToleranceOn(This,Value)

#define IDimensionText_get_DeviationOn(This,Result)	\
    (This)->lpVtbl -> get_DeviationOn(This,Result)

#define IDimensionText_put_DeviationOn(This,Value)	\
    (This)->lpVtbl -> put_DeviationOn(This,Value)

#define IDimensionText_get_DeviationType(This,Result)	\
    (This)->lpVtbl -> get_DeviationType(This,Result)

#define IDimensionText_put_DeviationType(This,Value)	\
    (This)->lpVtbl -> put_DeviationType(This,Value)

#define IDimensionText_get_Rectangle(This,Result)	\
    (This)->lpVtbl -> get_Rectangle(This,Result)

#define IDimensionText_put_Rectangle(This,Value)	\
    (This)->lpVtbl -> put_Rectangle(This,Value)

#define IDimensionText_get_UnderLine(This,Result)	\
    (This)->lpVtbl -> get_UnderLine(This,Result)

#define IDimensionText_put_UnderLine(This,Value)	\
    (This)->lpVtbl -> put_UnderLine(This,Value)

#define IDimensionText_get_Brackets(This,Result)	\
    (This)->lpVtbl -> get_Brackets(This,Result)

#define IDimensionText_put_Brackets(This,Value)	\
    (This)->lpVtbl -> put_Brackets(This,Value)

#define IDimensionText_get_TextAlign(This,Result)	\
    (This)->lpVtbl -> get_TextAlign(This,Result)

#define IDimensionText_put_TextAlign(This,Value)	\
    (This)->lpVtbl -> put_TextAlign(This,Value)

#define IDimensionText_get_Prefix(This,PVal)	\
    (This)->lpVtbl -> get_Prefix(This,PVal)

#define IDimensionText_get_NominalText(This,PVal)	\
    (This)->lpVtbl -> get_NominalText(This,PVal)

#define IDimensionText_get_Tolerance(This,PVal)	\
    (This)->lpVtbl -> get_Tolerance(This,PVal)

#define IDimensionText_put_Tolerance(This,Val)	\
    (This)->lpVtbl -> put_Tolerance(This,Val)

#define IDimensionText_get_HighDeviation(This,PVal)	\
    (This)->lpVtbl -> get_HighDeviation(This,PVal)

#define IDimensionText_get_LowDeviation(This,PVal)	\
    (This)->lpVtbl -> get_LowDeviation(This,PVal)

#define IDimensionText_get_Unit(This,PVal)	\
    (This)->lpVtbl -> get_Unit(This,PVal)

#define IDimensionText_get_Suffix(This,PVal)	\
    (This)->lpVtbl -> get_Suffix(This,PVal)

#define IDimensionText_get_TextUnder(This,PVal)	\
    (This)->lpVtbl -> get_TextUnder(This,PVal)

#define IDimensionText_get_TextFormat(This,PVal)	\
    (This)->lpVtbl -> get_TextFormat(This,PVal)

#define IDimensionText_put_TextFormat(This,Value)	\
    (This)->lpVtbl -> put_TextFormat(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Style_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_Style_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IDimensionText_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Sign_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_Sign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_Sign_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IDimensionText_put_Sign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_SignFont_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_SignFont_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_SignFont_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ BSTR Value);


void __RPC_STUB IDimensionText_put_SignFont_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_NominalValue_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_NominalValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_NominalValue_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDimensionText_put_NominalValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_AutoNominalValue_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_AutoNominalValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_AutoNominalValue_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionText_put_AutoNominalValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_ToleranceOn_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_ToleranceOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_ToleranceOn_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionText_put_ToleranceOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_DeviationOn_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_DeviationOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_DeviationOn_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionText_put_DeviationOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_DeviationType_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionDeviationEnum __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_DeviationType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_DeviationType_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionDeviationEnum Value);


void __RPC_STUB IDimensionText_put_DeviationType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Rectangle_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_Rectangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_Rectangle_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionText_put_Rectangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_UnderLine_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_UnderLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_UnderLine_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionText_put_UnderLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Brackets_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionTextBracketsEnum __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_Brackets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_Brackets_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionTextBracketsEnum Value);


void __RPC_STUB IDimensionText_put_Brackets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_TextAlign_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionTextAlignEnum __RPC_FAR *Result);


void __RPC_STUB IDimensionText_get_TextAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_TextAlign_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionTextAlignEnum Value);


void __RPC_STUB IDimensionText_put_TextAlign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Prefix_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_Prefix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_NominalText_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_NominalText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Tolerance_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_Tolerance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_Tolerance_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IDimensionText_put_Tolerance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_HighDeviation_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_HighDeviation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_LowDeviation_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_LowDeviation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Unit_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_Unit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_Suffix_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_Suffix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_TextUnder_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_TextUnder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionText_get_TextFormat_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimTextFormatEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionText_get_TextFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionText_put_TextFormat_Proxy( 
    IDimensionText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimTextFormatEnum Value);


void __RPC_STUB IDimensionText_put_TextFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDimensionText_INTERFACE_DEFINED__ */


#ifndef __IDimensionParams_INTERFACE_DEFINED__
#define __IDimensionParams_INTERFACE_DEFINED__

/* interface IDimensionParams */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDimensionParams,0x534518CC,0x6577,0x4273,0x88,0x7A,0x6B,0x83,0x3F,0xDE,0x6E,0xD7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("534518CC-6577-4273-887A-6B833FDE6ED7")
    IDimensionParams : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemoteLine1( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RemoteLine1( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemoteLine2( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RemoteLine2( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType1( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType1( 
            /* [in] */ /* external definition not present */ ksArrowEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType2( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType2( 
            /* [in] */ /* external definition not present */ ksArrowEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowPos( 
            /* [retval][out] */ /* external definition not present */ ksDimensionArrowPosEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowPos( 
            /* [in] */ /* external definition not present */ ksDimensionArrowPosEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextPos( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextPos( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextType( 
            /* [retval][out] */ /* external definition not present */ ksDimensionTextTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextType( 
            /* [in] */ /* external definition not present */ ksDimensionTextTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOnLine( 
            /* [retval][out] */ /* external definition not present */ ksDimensionTextPosEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOnLine( 
            /* [in] */ /* external definition not present */ ksDimensionTextPosEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextBase( 
            /* [retval][out] */ /* external definition not present */ ksDimensionBaseEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextBase( 
            /* [in] */ /* external definition not present */ ksDimensionBaseEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfAngle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfAngle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfLength( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Gap( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Gap( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GapValue( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_GapValue( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDimensionParamsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDimensionParams __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDimensionParams __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDimensionParams __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RemoteLine1 )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RemoteLine1 )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RemoteLine2 )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RemoteLine2 )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType1 )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType1 )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType2 )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType2 )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowPos )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionArrowPosEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowPos )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionArrowPosEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextPos )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextPos )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextType )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionTextTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextType )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionTextTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextOnLine )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionTextPosEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextOnLine )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionTextPosEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBase )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionBaseEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextBase )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionBaseEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfAngle )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfAngle )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfLength )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfLength )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Gap )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Gap )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GapValue )( 
            IDimensionParams __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_GapValue )( 
            IDimensionParams __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IDimensionParamsVtbl;

    interface IDimensionParams
    {
        CONST_VTBL struct IDimensionParamsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IDimensionParams_get_RemoteLine1(This,PVal)	\
    (This)->lpVtbl -> get_RemoteLine1(This,PVal)

#define IDimensionParams_put_RemoteLine1(This,Value)	\
    (This)->lpVtbl -> put_RemoteLine1(This,Value)

#define IDimensionParams_get_RemoteLine2(This,PVal)	\
    (This)->lpVtbl -> get_RemoteLine2(This,PVal)

#define IDimensionParams_put_RemoteLine2(This,Value)	\
    (This)->lpVtbl -> put_RemoteLine2(This,Value)

#define IDimensionParams_get_ArrowType1(This,PVal)	\
    (This)->lpVtbl -> get_ArrowType1(This,PVal)

#define IDimensionParams_put_ArrowType1(This,Value)	\
    (This)->lpVtbl -> put_ArrowType1(This,Value)

#define IDimensionParams_get_ArrowType2(This,PVal)	\
    (This)->lpVtbl -> get_ArrowType2(This,PVal)

#define IDimensionParams_put_ArrowType2(This,Value)	\
    (This)->lpVtbl -> put_ArrowType2(This,Value)

#define IDimensionParams_get_ArrowPos(This,PVal)	\
    (This)->lpVtbl -> get_ArrowPos(This,PVal)

#define IDimensionParams_put_ArrowPos(This,Value)	\
    (This)->lpVtbl -> put_ArrowPos(This,Value)

#define IDimensionParams_get_TextPos(This,PVal)	\
    (This)->lpVtbl -> get_TextPos(This,PVal)

#define IDimensionParams_put_TextPos(This,Value)	\
    (This)->lpVtbl -> put_TextPos(This,Value)

#define IDimensionParams_get_TextType(This,PVal)	\
    (This)->lpVtbl -> get_TextType(This,PVal)

#define IDimensionParams_put_TextType(This,Value)	\
    (This)->lpVtbl -> put_TextType(This,Value)

#define IDimensionParams_get_TextOnLine(This,PVal)	\
    (This)->lpVtbl -> get_TextOnLine(This,PVal)

#define IDimensionParams_put_TextOnLine(This,Value)	\
    (This)->lpVtbl -> put_TextOnLine(This,Value)

#define IDimensionParams_get_TextBase(This,PVal)	\
    (This)->lpVtbl -> get_TextBase(This,PVal)

#define IDimensionParams_put_TextBase(This,Value)	\
    (This)->lpVtbl -> put_TextBase(This,Value)

#define IDimensionParams_get_ShelfDirection(This,PVal)	\
    (This)->lpVtbl -> get_ShelfDirection(This,PVal)

#define IDimensionParams_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IDimensionParams_get_ShelfAngle(This,PVal)	\
    (This)->lpVtbl -> get_ShelfAngle(This,PVal)

#define IDimensionParams_put_ShelfAngle(This,Value)	\
    (This)->lpVtbl -> put_ShelfAngle(This,Value)

#define IDimensionParams_get_ShelfLength(This,PVal)	\
    (This)->lpVtbl -> get_ShelfLength(This,PVal)

#define IDimensionParams_put_ShelfLength(This,Value)	\
    (This)->lpVtbl -> put_ShelfLength(This,Value)

#define IDimensionParams_get_Gap(This,PVal)	\
    (This)->lpVtbl -> get_Gap(This,PVal)

#define IDimensionParams_put_Gap(This,Value)	\
    (This)->lpVtbl -> put_Gap(This,Value)

#define IDimensionParams_get_GapValue(This,PVal)	\
    (This)->lpVtbl -> get_GapValue(This,PVal)

#define IDimensionParams_put_GapValue(This,Value)	\
    (This)->lpVtbl -> put_GapValue(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_RemoteLine1_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_RemoteLine1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_RemoteLine1_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionParams_put_RemoteLine1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_RemoteLine2_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_RemoteLine2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_RemoteLine2_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionParams_put_RemoteLine2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_ArrowType1_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_ArrowType1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_ArrowType1_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum Value);


void __RPC_STUB IDimensionParams_put_ArrowType1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_ArrowType2_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_ArrowType2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_ArrowType2_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum Value);


void __RPC_STUB IDimensionParams_put_ArrowType2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_ArrowPos_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionArrowPosEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_ArrowPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_ArrowPos_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionArrowPosEnum Value);


void __RPC_STUB IDimensionParams_put_ArrowPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_TextPos_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_TextPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_TextPos_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IDimensionParams_put_TextPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_TextType_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionTextTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_TextType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_TextType_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionTextTypeEnum Value);


void __RPC_STUB IDimensionParams_put_TextType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_TextOnLine_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionTextPosEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_TextOnLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_TextOnLine_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionTextPosEnum Value);


void __RPC_STUB IDimensionParams_put_TextOnLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_TextBase_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionBaseEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_TextBase_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_TextBase_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionBaseEnum Value);


void __RPC_STUB IDimensionParams_put_TextBase_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_ShelfDirection_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_ShelfDirection_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB IDimensionParams_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_ShelfAngle_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_ShelfAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_ShelfAngle_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDimensionParams_put_ShelfAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_ShelfLength_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_ShelfLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_ShelfLength_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDimensionParams_put_ShelfLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_Gap_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_Gap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_Gap_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDimensionParams_put_Gap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDimensionParams_get_GapValue_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IDimensionParams_get_GapValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDimensionParams_put_GapValue_Proxy( 
    IDimensionParams __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IDimensionParams_put_GapValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDimensionParams_INTERFACE_DEFINED__ */


#ifndef __ILoadCombination_INTERFACE_DEFINED__
#define __ILoadCombination_INTERFACE_DEFINED__

/* interface ILoadCombination */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILoadCombination,0xE7F1FD16,0xB641,0x4264,0x85,0x9C,0xD4,0x72,0x17,0xDA,0x8B,0x04);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E7F1FD16-B641-4264-859C-D47217DA8B04")
    ILoadCombination : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CompletelyLoaded( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LoadCombinations( 
            /* [retval][out] */ VARIANT __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentIndex( 
            /* [retval][out] */ long __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Create( 
            /* [in] */ BSTR CombinationName,
            /* [retval][out] */ long __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ VARIANT LoadCombinationIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Apply( 
            /* [in] */ VARIANT LoadCombinationIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILoadCombinationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILoadCombination __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILoadCombination __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILoadCombination __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CompletelyLoaded )( 
            ILoadCombination __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LoadCombinations )( 
            ILoadCombination __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentIndex )( 
            ILoadCombination __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Create )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ BSTR CombinationName,
            /* [retval][out] */ long __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ VARIANT LoadCombinationIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Apply )( 
            ILoadCombination __RPC_FAR * This,
            /* [in] */ VARIANT LoadCombinationIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        END_INTERFACE
    } ILoadCombinationVtbl;

    interface ILoadCombination
    {
        CONST_VTBL struct ILoadCombinationVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ILoadCombination_get_CompletelyLoaded(This,Type)	\
    (This)->lpVtbl -> get_CompletelyLoaded(This,Type)

#define ILoadCombination_get_LoadCombinations(This,Value)	\
    (This)->lpVtbl -> get_LoadCombinations(This,Value)

#define ILoadCombination_get_CurrentIndex(This,Value)	\
    (This)->lpVtbl -> get_CurrentIndex(This,Value)

#define ILoadCombination_Create(This,CombinationName,Value)	\
    (This)->lpVtbl -> Create(This,CombinationName,Value)

#define ILoadCombination_Delete(This,LoadCombinationIndex,Value)	\
    (This)->lpVtbl -> Delete(This,LoadCombinationIndex,Value)

#define ILoadCombination_Apply(This,LoadCombinationIndex,Value)	\
    (This)->lpVtbl -> Apply(This,LoadCombinationIndex,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILoadCombination_get_CompletelyLoaded_Proxy( 
    ILoadCombination __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);


void __RPC_STUB ILoadCombination_get_CompletelyLoaded_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILoadCombination_get_LoadCombinations_Proxy( 
    ILoadCombination __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Value);


void __RPC_STUB ILoadCombination_get_LoadCombinations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILoadCombination_get_CurrentIndex_Proxy( 
    ILoadCombination __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Value);


void __RPC_STUB ILoadCombination_get_CurrentIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILoadCombination_Create_Proxy( 
    ILoadCombination __RPC_FAR * This,
    /* [in] */ BSTR CombinationName,
    /* [retval][out] */ long __RPC_FAR *Value);


void __RPC_STUB ILoadCombination_Create_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILoadCombination_Delete_Proxy( 
    ILoadCombination __RPC_FAR * This,
    /* [in] */ VARIANT LoadCombinationIndex,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB ILoadCombination_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILoadCombination_Apply_Proxy( 
    ILoadCombination __RPC_FAR * This,
    /* [in] */ VARIANT LoadCombinationIndex,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB ILoadCombination_Apply_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILoadCombination_INTERFACE_DEFINED__ */


#ifndef __IFrameTreesManager_INTERFACE_DEFINED__
#define __IFrameTreesManager_INTERFACE_DEFINED__

/* interface IFrameTreesManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IFrameTreesManager,0xB9019350,0xFF1D,0x4161,0xB4,0x1B,0xCD,0x1B,0x02,0x0E,0xCF,0x36);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B9019350-FF1D-4161-B41B-CD1B020ECF36")
    IFrameTreesManager : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddTab( 
            /* [in] */ BSTR TabCaption,
            /* [in] */ BSTR OcxClassID,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveTab( 
            /* [in] */ IDispatch __RPC_FAR *Ocx,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveTab( 
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Ocx) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveTab( 
            /* [in] */ IDispatch __RPC_FAR *Ocx) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TabsVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TabsVisible( 
            /* [in] */ VARIANT_BOOL PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFrameTreesManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IFrameTreesManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IFrameTreesManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddTab )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ BSTR TabCaption,
            /* [in] */ BSTR OcxClassID,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveTab )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ IDispatch __RPC_FAR *Ocx,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveTab )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Ocx);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveTab )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ IDispatch __RPC_FAR *Ocx);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TabsVisible )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TabsVisible )( 
            IFrameTreesManager __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL PVal);
        
        END_INTERFACE
    } IFrameTreesManagerVtbl;

    interface IFrameTreesManager
    {
        CONST_VTBL struct IFrameTreesManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IFrameTreesManager_AddTab(This,TabCaption,OcxClassID,PVal)	\
    (This)->lpVtbl -> AddTab(This,TabCaption,OcxClassID,PVal)

#define IFrameTreesManager_RemoveTab(This,Ocx,PVal)	\
    (This)->lpVtbl -> RemoveTab(This,Ocx,PVal)

#define IFrameTreesManager_get_ActiveTab(This,Ocx)	\
    (This)->lpVtbl -> get_ActiveTab(This,Ocx)

#define IFrameTreesManager_put_ActiveTab(This,Ocx)	\
    (This)->lpVtbl -> put_ActiveTab(This,Ocx)

#define IFrameTreesManager_get_TabsVisible(This,PVal)	\
    (This)->lpVtbl -> get_TabsVisible(This,PVal)

#define IFrameTreesManager_put_TabsVisible(This,PVal)	\
    (This)->lpVtbl -> put_TabsVisible(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IFrameTreesManager_AddTab_Proxy( 
    IFrameTreesManager __RPC_FAR * This,
    /* [in] */ BSTR TabCaption,
    /* [in] */ BSTR OcxClassID,
    /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IFrameTreesManager_AddTab_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IFrameTreesManager_RemoveTab_Proxy( 
    IFrameTreesManager __RPC_FAR * This,
    /* [in] */ IDispatch __RPC_FAR *Ocx,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IFrameTreesManager_RemoveTab_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFrameTreesManager_get_ActiveTab_Proxy( 
    IFrameTreesManager __RPC_FAR * This,
    /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *Ocx);


void __RPC_STUB IFrameTreesManager_get_ActiveTab_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IFrameTreesManager_put_ActiveTab_Proxy( 
    IFrameTreesManager __RPC_FAR * This,
    /* [in] */ IDispatch __RPC_FAR *Ocx);


void __RPC_STUB IFrameTreesManager_put_ActiveTab_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFrameTreesManager_get_TabsVisible_Proxy( 
    IFrameTreesManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IFrameTreesManager_get_TabsVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IFrameTreesManager_put_TabsVisible_Proxy( 
    IFrameTreesManager __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL PVal);


void __RPC_STUB IFrameTreesManager_put_TabsVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFrameTreesManager_INTERFACE_DEFINED__ */


#ifndef __IAttribute_INTERFACE_DEFINED__
#define __IAttribute_INTERFACE_DEFINED__

/* interface IAttribute */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAttribute,0x94F965B0,0x5ABB,0x4994,0x98,0xC7,0xB0,0x8F,0xA8,0x51,0x54,0x52);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("94F965B0-5ABB-4994-98C7-B08FA8515452")
    IAttribute : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Objects( 
            /* [in] */ VARIANT Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Objects( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [in] */ long RowNumb,
            /* [in] */ long ColumnNumb,
            /* [retval][out] */ VARIANT __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetValue( 
            /* [in] */ BSTR Password,
            /* [in] */ long RowNumb,
            /* [in] */ long ColumnNumb,
            /* [in] */ VARIANT Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Values( 
            /* [retval][out] */ VARIANT __RPC_FAR *Values) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetValues( 
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Values,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FlagVisible( 
            /* [retval][out] */ VARIANT __RPC_FAR *Values) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetFlagVisible( 
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Values,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnKey( 
            /* [retval][out] */ VARIANT __RPC_FAR *Values) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColumnKey( 
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Keys,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPassword( 
            /* [in] */ BSTR OldPassword,
            /* [in] */ BSTR NewPassword,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddRow( 
            /* [in] */ BSTR Password,
            /* [in] */ long RowNumb,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteRow( 
            /* [in] */ BSTR Password,
            /* [in] */ long RowNumb,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetKeysInfo( 
            /* [out] */ long __RPC_FAR *Key1,
            /* [out] */ long __RPC_FAR *Key2,
            /* [out] */ long __RPC_FAR *Key3,
            /* [out] */ long __RPC_FAR *Key4,
            /* [out] */ double __RPC_FAR *Numb,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetKeysInfo( 
            /* [in] */ BSTR Password,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeType( 
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowsCount( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnsCount( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ViewEdit( 
            /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RecordFlagVisible( 
            /* [in] */ long ColumnNumb,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetRecordFlagVisible( 
            /* [in] */ BSTR Password,
            /* [in] */ long ColumnNumb,
            /* [in] */ VARIANT Values,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAttributeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAttribute __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAttribute __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAttribute __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Objects )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ VARIANT Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Objects )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ long RowNumb,
            /* [in] */ long ColumnNumb,
            /* [retval][out] */ VARIANT __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetValue )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ long RowNumb,
            /* [in] */ long ColumnNumb,
            /* [in] */ VARIANT Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Values )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Values);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetValues )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Values,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FlagVisible )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Values);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFlagVisible )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Values,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnKey )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Values);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetColumnKey )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Keys,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPassword )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR OldPassword,
            /* [in] */ BSTR NewPassword,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRow )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ long RowNumb,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRow )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ long RowNumb,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKeysInfo )( 
            IAttribute __RPC_FAR * This,
            /* [out] */ long __RPC_FAR *Key1,
            /* [out] */ long __RPC_FAR *Key2,
            /* [out] */ long __RPC_FAR *Key3,
            /* [out] */ long __RPC_FAR *Key4,
            /* [out] */ double __RPC_FAR *Numb,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetKeysInfo )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeType )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowsCount )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnsCount )( 
            IAttribute __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ViewEdit )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RecordFlagVisible )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ long ColumnNumb,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRecordFlagVisible )( 
            IAttribute __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [in] */ long ColumnNumb,
            /* [in] */ VARIANT Values,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        END_INTERFACE
    } IAttributeVtbl;

    interface IAttribute
    {
        CONST_VTBL struct IAttributeVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IAttribute_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAttribute_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAttribute_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAttribute_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAttribute_put_Objects(This,Result)	\
    (This)->lpVtbl -> put_Objects(This,Result)

#define IAttribute_get_Objects(This,Result)	\
    (This)->lpVtbl -> get_Objects(This,Result)

#define IAttribute_get_Value(This,RowNumb,ColumnNumb,Value)	\
    (This)->lpVtbl -> get_Value(This,RowNumb,ColumnNumb,Value)

#define IAttribute_SetValue(This,Password,RowNumb,ColumnNumb,Value,Res)	\
    (This)->lpVtbl -> SetValue(This,Password,RowNumb,ColumnNumb,Value,Res)

#define IAttribute_get_Values(This,Values)	\
    (This)->lpVtbl -> get_Values(This,Values)

#define IAttribute_SetValues(This,Password,Values,Res)	\
    (This)->lpVtbl -> SetValues(This,Password,Values,Res)

#define IAttribute_get_FlagVisible(This,Values)	\
    (This)->lpVtbl -> get_FlagVisible(This,Values)

#define IAttribute_SetFlagVisible(This,Password,Values,Res)	\
    (This)->lpVtbl -> SetFlagVisible(This,Password,Values,Res)

#define IAttribute_get_ColumnKey(This,Values)	\
    (This)->lpVtbl -> get_ColumnKey(This,Values)

#define IAttribute_SetColumnKey(This,Password,Keys,Res)	\
    (This)->lpVtbl -> SetColumnKey(This,Password,Keys,Res)

#define IAttribute_SetPassword(This,OldPassword,NewPassword,Result)	\
    (This)->lpVtbl -> SetPassword(This,OldPassword,NewPassword,Result)

#define IAttribute_AddRow(This,Password,RowNumb,Result)	\
    (This)->lpVtbl -> AddRow(This,Password,RowNumb,Result)

#define IAttribute_DeleteRow(This,Password,RowNumb,Result)	\
    (This)->lpVtbl -> DeleteRow(This,Password,RowNumb,Result)

#define IAttribute_GetKeysInfo(This,Key1,Key2,Key3,Key4,Numb,Result)	\
    (This)->lpVtbl -> GetKeysInfo(This,Key1,Key2,Key3,Key4,Numb,Result)

#define IAttribute_SetKeysInfo(This,Password,Key1,Key2,Key3,Key4,Result)	\
    (This)->lpVtbl -> SetKeysInfo(This,Password,Key1,Key2,Key3,Key4,Result)

#define IAttribute_get_AttributeType(This,Result)	\
    (This)->lpVtbl -> get_AttributeType(This,Result)

#define IAttribute_get_RowsCount(This,Val)	\
    (This)->lpVtbl -> get_RowsCount(This,Val)

#define IAttribute_get_ColumnsCount(This,Val)	\
    (This)->lpVtbl -> get_ColumnsCount(This,Val)

#define IAttribute_Delete(This,Password,Objects,PRes)	\
    (This)->lpVtbl -> Delete(This,Password,Objects,PRes)

#define IAttribute_ViewEdit(This,Parent,Password,ReadOnly,Res)	\
    (This)->lpVtbl -> ViewEdit(This,Parent,Password,ReadOnly,Res)

#define IAttribute_get_RecordFlagVisible(This,ColumnNumb,Result)	\
    (This)->lpVtbl -> get_RecordFlagVisible(This,ColumnNumb,Result)

#define IAttribute_SetRecordFlagVisible(This,Password,ColumnNumb,Values,Res)	\
    (This)->lpVtbl -> SetRecordFlagVisible(This,Password,ColumnNumb,Values,Res)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAttribute_put_Objects_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ VARIANT Result);


void __RPC_STUB IAttribute_put_Objects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_Objects_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IAttribute_get_Objects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_Value_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ long RowNumb,
    /* [in] */ long ColumnNumb,
    /* [retval][out] */ VARIANT __RPC_FAR *Value);


void __RPC_STUB IAttribute_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetValue_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ long RowNumb,
    /* [in] */ long ColumnNumb,
    /* [in] */ VARIANT Value,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttribute_SetValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_Values_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Values);


void __RPC_STUB IAttribute_get_Values_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetValues_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT Values,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttribute_SetValues_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_FlagVisible_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Values);


void __RPC_STUB IAttribute_get_FlagVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetFlagVisible_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT Values,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttribute_SetFlagVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_ColumnKey_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Values);


void __RPC_STUB IAttribute_get_ColumnKey_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetColumnKey_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT Keys,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttribute_SetColumnKey_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetPassword_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR OldPassword,
    /* [in] */ BSTR NewPassword,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttribute_SetPassword_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_AddRow_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ long RowNumb,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttribute_AddRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_DeleteRow_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ long RowNumb,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttribute_DeleteRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_GetKeysInfo_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [out] */ long __RPC_FAR *Key1,
    /* [out] */ long __RPC_FAR *Key2,
    /* [out] */ long __RPC_FAR *Key3,
    /* [out] */ long __RPC_FAR *Key4,
    /* [out] */ double __RPC_FAR *Numb,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttribute_GetKeysInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetKeysInfo_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ long Key1,
    /* [in] */ long Key2,
    /* [in] */ long Key3,
    /* [in] */ long Key4,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttribute_SetKeysInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_AttributeType_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAttribute_get_AttributeType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_RowsCount_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB IAttribute_get_RowsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_ColumnsCount_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB IAttribute_get_ColumnsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_Delete_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IAttribute_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_ViewEdit_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT_BOOL ReadOnly,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttribute_ViewEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttribute_get_RecordFlagVisible_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ long ColumnNumb,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IAttribute_get_RecordFlagVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttribute_SetRecordFlagVisible_Proxy( 
    IAttribute __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [in] */ long ColumnNumb,
    /* [in] */ VARIANT Values,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttribute_SetRecordFlagVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAttribute_INTERFACE_DEFINED__ */


#ifndef __IColumnInfo_INTERFACE_DEFINED__
#define __IColumnInfo_INTERFACE_DEFINED__

/* interface IColumnInfo */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IColumnInfo,0x3FDE0F44,0x4459,0x49f3,0xA0,0x12,0xE6,0x4F,0x9B,0xFA,0x45,0x4D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3FDE0F44-4459-49f3-A012-E64F9BFA454D")
    IColumnInfo : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Caption( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Caption( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColType( 
            /* [in] */ /* external definition not present */ ksValueTypeEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColType( 
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Key( 
            /* [in] */ long PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Key( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DefValue( 
            /* [in] */ VARIANT PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ListValue( 
            /* [in] */ VARIANT_BOOL PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ListValue( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SortListValue( 
            /* [in] */ VARIANT_BOOL PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortListValue( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Range( 
            /* [in] */ VARIANT PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Range( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RecordColumnInfo( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddRecordColumn( 
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksValueTypeEnum Type,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IColumnInfoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IColumnInfo __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IColumnInfo __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IColumnInfo __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Caption )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Caption )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ColType )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksValueTypeEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColType )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Key )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Key )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefValue )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ VARIANT PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefValue )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ListValue )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ListValue )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SortListValue )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortListValue )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Range )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ VARIANT PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Range )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RecordColumnInfo )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRecordColumn )( 
            IColumnInfo __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksValueTypeEnum Type,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IColumnInfo __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        END_INTERFACE
    } IColumnInfoVtbl;

    interface IColumnInfo
    {
        CONST_VTBL struct IColumnInfoVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IColumnInfo_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IColumnInfo_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IColumnInfo_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IColumnInfo_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IColumnInfo_put_Caption(This,PVal)	\
    (This)->lpVtbl -> put_Caption(This,PVal)

#define IColumnInfo_get_Caption(This,PVal)	\
    (This)->lpVtbl -> get_Caption(This,PVal)

#define IColumnInfo_put_ColType(This,PVal)	\
    (This)->lpVtbl -> put_ColType(This,PVal)

#define IColumnInfo_get_ColType(This,PVal)	\
    (This)->lpVtbl -> get_ColType(This,PVal)

#define IColumnInfo_put_Key(This,PVal)	\
    (This)->lpVtbl -> put_Key(This,PVal)

#define IColumnInfo_get_Key(This,PVal)	\
    (This)->lpVtbl -> get_Key(This,PVal)

#define IColumnInfo_put_DefValue(This,PVal)	\
    (This)->lpVtbl -> put_DefValue(This,PVal)

#define IColumnInfo_get_DefValue(This,PVal)	\
    (This)->lpVtbl -> get_DefValue(This,PVal)

#define IColumnInfo_put_ListValue(This,PVal)	\
    (This)->lpVtbl -> put_ListValue(This,PVal)

#define IColumnInfo_get_ListValue(This,PVal)	\
    (This)->lpVtbl -> get_ListValue(This,PVal)

#define IColumnInfo_put_SortListValue(This,PVal)	\
    (This)->lpVtbl -> put_SortListValue(This,PVal)

#define IColumnInfo_get_SortListValue(This,PVal)	\
    (This)->lpVtbl -> get_SortListValue(This,PVal)

#define IColumnInfo_put_Range(This,PVal)	\
    (This)->lpVtbl -> put_Range(This,PVal)

#define IColumnInfo_get_Range(This,PVal)	\
    (This)->lpVtbl -> get_Range(This,PVal)

#define IColumnInfo_get_RecordColumnInfo(This,Index,Result)	\
    (This)->lpVtbl -> get_RecordColumnInfo(This,Index,Result)

#define IColumnInfo_AddRecordColumn(This,Index,Type,Name,Result)	\
    (This)->lpVtbl -> AddRecordColumn(This,Index,Type,Name,Result)

#define IColumnInfo_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_Caption_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IColumnInfo_put_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_Caption_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_ColType_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksValueTypeEnum PVal);


void __RPC_STUB IColumnInfo_put_ColType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_ColType_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_ColType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_Key_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ long PVal);


void __RPC_STUB IColumnInfo_put_Key_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_Key_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_Key_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_DefValue_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ VARIANT PVal);


void __RPC_STUB IColumnInfo_put_DefValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_DefValue_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_DefValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_ListValue_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL PVal);


void __RPC_STUB IColumnInfo_put_ListValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_ListValue_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_ListValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_SortListValue_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL PVal);


void __RPC_STUB IColumnInfo_put_SortListValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_SortListValue_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_SortListValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColumnInfo_put_Range_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ VARIANT PVal);


void __RPC_STUB IColumnInfo_put_Range_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_Range_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IColumnInfo_get_Range_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColumnInfo_get_RecordColumnInfo_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IColumnInfo_get_RecordColumnInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColumnInfo_AddRecordColumn_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ /* external definition not present */ ksValueTypeEnum Type,
    /* [in] */ BSTR Name,
    /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IColumnInfo_AddRecordColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColumnInfo_Delete_Proxy( 
    IColumnInfo __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IColumnInfo_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IColumnInfo_INTERFACE_DEFINED__ */


#ifndef __IAttributeType_INTERFACE_DEFINED__
#define __IAttributeType_INTERFACE_DEFINED__

/* interface IAttributeType */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAttributeType,0x414CF83E,0x4FA3,0x42ab,0xBC,0x26,0x6C,0x6B,0xBF,0x91,0xBB,0x0F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("414CF83E-4FA3-42ab-BC26-6C6BBF91BB0F")
    IAttributeType : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TypeName( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TypeName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AttrType( 
            /* [in] */ /* external definition not present */ ksAttributeTypeEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttrType( 
            /* [retval][out] */ /* external definition not present */ ksAttributeTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetKeysInfo( 
            /* [out] */ long __RPC_FAR *Key1,
            /* [out] */ long __RPC_FAR *Key2,
            /* [out] */ long __RPC_FAR *Key3,
            /* [out] */ long __RPC_FAR *Key4,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetKeysInfo( 
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UniqueNumb( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPassword( 
            /* [in] */ BSTR OldPassword,
            /* [in] */ BSTR NewPassword,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnInfo( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddColumn( 
            /* [in] */ long Index,
            /* external definition not present */ ksValueTypeEnum Type,
            BSTR Name,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [in] */ BSTR Password,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ BSTR Password,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ViewEdit( 
            /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RowsCount( 
            /* [in] */ long Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowsCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAttributeTypeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAttributeType __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAttributeType __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAttributeType __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TypeName )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TypeName )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttrType )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAttributeTypeEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttrType )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAttributeTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKeysInfo )( 
            IAttributeType __RPC_FAR * This,
            /* [out] */ long __RPC_FAR *Key1,
            /* [out] */ long __RPC_FAR *Key2,
            /* [out] */ long __RPC_FAR *Key3,
            /* [out] */ long __RPC_FAR *Key4,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetKeysInfo )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ long Key1,
            /* [in] */ long Key2,
            /* [in] */ long Key3,
            /* [in] */ long Key4,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UniqueNumb )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPassword )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ BSTR OldPassword,
            /* [in] */ BSTR NewPassword,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnInfo )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ long Index,
            /* external definition not present */ ksValueTypeEnum Type,
            BSTR Name,
            /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ BSTR Password,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ViewEdit )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
            /* [in] */ BSTR Password,
            /* [in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RowsCount )( 
            IAttributeType __RPC_FAR * This,
            /* [in] */ long Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowsCount )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IAttributeType __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } IAttributeTypeVtbl;

    interface IAttributeType
    {
        CONST_VTBL struct IAttributeTypeVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IAttributeType_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAttributeType_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAttributeType_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAttributeType_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAttributeType_put_TypeName(This,PVal)	\
    (This)->lpVtbl -> put_TypeName(This,PVal)

#define IAttributeType_get_TypeName(This,PVal)	\
    (This)->lpVtbl -> get_TypeName(This,PVal)

#define IAttributeType_put_AttrType(This,PVal)	\
    (This)->lpVtbl -> put_AttrType(This,PVal)

#define IAttributeType_get_AttrType(This,PVal)	\
    (This)->lpVtbl -> get_AttrType(This,PVal)

#define IAttributeType_GetKeysInfo(This,Key1,Key2,Key3,Key4,Result)	\
    (This)->lpVtbl -> GetKeysInfo(This,Key1,Key2,Key3,Key4,Result)

#define IAttributeType_SetKeysInfo(This,Key1,Key2,Key3,Key4,Result)	\
    (This)->lpVtbl -> SetKeysInfo(This,Key1,Key2,Key3,Key4,Result)

#define IAttributeType_get_UniqueNumb(This,PVal)	\
    (This)->lpVtbl -> get_UniqueNumb(This,PVal)

#define IAttributeType_SetPassword(This,OldPassword,NewPassword,Result)	\
    (This)->lpVtbl -> SetPassword(This,OldPassword,NewPassword,Result)

#define IAttributeType_get_ColumnInfo(This,Index,Result)	\
    (This)->lpVtbl -> get_ColumnInfo(This,Index,Result)

#define IAttributeType_AddColumn(This,Index,Type,Name,Result)	\
    (This)->lpVtbl -> AddColumn(This,Index,Type,Name,Result)

#define IAttributeType_Update(This,Password,PRes)	\
    (This)->lpVtbl -> Update(This,Password,PRes)

#define IAttributeType_Delete(This,Password,PRes)	\
    (This)->lpVtbl -> Delete(This,Password,PRes)

#define IAttributeType_ViewEdit(This,Parent,Password,ReadOnly,Res)	\
    (This)->lpVtbl -> ViewEdit(This,Parent,Password,ReadOnly,Res)

#define IAttributeType_put_RowsCount(This,Count)	\
    (This)->lpVtbl -> put_RowsCount(This,Count)

#define IAttributeType_get_RowsCount(This,Count)	\
    (This)->lpVtbl -> get_RowsCount(This,Count)

#define IAttributeType_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAttributeType_put_TypeName_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IAttributeType_put_TypeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttributeType_get_TypeName_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IAttributeType_get_TypeName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAttributeType_put_AttrType_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAttributeTypeEnum PVal);


void __RPC_STUB IAttributeType_put_AttrType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttributeType_get_AttrType_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAttributeTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IAttributeType_get_AttrType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_GetKeysInfo_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [out] */ long __RPC_FAR *Key1,
    /* [out] */ long __RPC_FAR *Key2,
    /* [out] */ long __RPC_FAR *Key3,
    /* [out] */ long __RPC_FAR *Key4,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttributeType_GetKeysInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_SetKeysInfo_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ long Key1,
    /* [in] */ long Key2,
    /* [in] */ long Key3,
    /* [in] */ long Key4,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttributeType_SetKeysInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttributeType_get_UniqueNumb_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAttributeType_get_UniqueNumb_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_SetPassword_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ BSTR OldPassword,
    /* [in] */ BSTR NewPassword,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAttributeType_SetPassword_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttributeType_get_ColumnInfo_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAttributeType_get_ColumnInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_AddColumn_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ long Index,
    /* external definition not present */ ksValueTypeEnum Type,
    BSTR Name,
    /* [retval][out] */ IColumnInfo __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAttributeType_AddColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_Update_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IAttributeType_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_Delete_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ BSTR Password,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IAttributeType_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttributeType_ViewEdit_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
    /* [in] */ BSTR Password,
    /* [in] */ VARIANT_BOOL ReadOnly,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IAttributeType_ViewEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAttributeType_put_RowsCount_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [in] */ long Count);


void __RPC_STUB IAttributeType_put_RowsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttributeType_get_RowsCount_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IAttributeType_get_RowsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttributeType_get_FileName_Proxy( 
    IAttributeType __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IAttributeType_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAttributeType_INTERFACE_DEFINED__ */


#ifndef __IAttrTypeMng_INTERFACE_DEFINED__
#define __IAttrTypeMng_INTERFACE_DEFINED__

/* interface IAttrTypeMng */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAttrTypeMng,0x5378690E,0xA57D,0x473f,0x84,0xDC,0xCA,0x50,0x8B,0x34,0xFA,0xD7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5378690E-A57D-473f-84DC-CA508B34FAD7")
    IAttrTypeMng : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateAttrType( 
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAttrType( 
            /* [in] */ double AttrID,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ChoiceAttrTypes( 
            /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAttrTypes( 
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ VARIANT __RPC_FAR *Res) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAttrTypeMngVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAttrTypeMng __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAttrTypeMng __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateAttrType )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAttrType )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ double AttrID,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ChoiceAttrTypes )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAttrTypes )( 
            IAttrTypeMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ VARIANT __RPC_FAR *Res);
        
        END_INTERFACE
    } IAttrTypeMngVtbl;

    interface IAttrTypeMng
    {
        CONST_VTBL struct IAttrTypeMngVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IAttrTypeMng_CreateAttrType(This,Libname,Res)	\
    (This)->lpVtbl -> CreateAttrType(This,Libname,Res)

#define IAttrTypeMng_GetAttrType(This,AttrID,Libname,Res)	\
    (This)->lpVtbl -> GetAttrType(This,AttrID,Libname,Res)

#define IAttrTypeMng_ChoiceAttrTypes(This,HWnd,Libname,Res)	\
    (This)->lpVtbl -> ChoiceAttrTypes(This,HWnd,Libname,Res)

#define IAttrTypeMng_GetAttrTypes(This,Libname,Res)	\
    (This)->lpVtbl -> GetAttrTypes(This,Libname,Res)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttrTypeMng_CreateAttrType_Proxy( 
    IAttrTypeMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res);


void __RPC_STUB IAttrTypeMng_CreateAttrType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttrTypeMng_GetAttrType_Proxy( 
    IAttrTypeMng __RPC_FAR * This,
    /* [in] */ double AttrID,
    /* [in] */ VARIANT Libname,
    /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res);


void __RPC_STUB IAttrTypeMng_GetAttrType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttrTypeMng_ChoiceAttrTypes_Proxy( 
    IAttrTypeMng __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
    /* [in] */ VARIANT Libname,
    /* [retval][out] */ IAttributeType __RPC_FAR *__RPC_FAR *Res);


void __RPC_STUB IAttrTypeMng_ChoiceAttrTypes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttrTypeMng_GetAttrTypes_Proxy( 
    IAttrTypeMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [retval][out] */ VARIANT __RPC_FAR *Res);


void __RPC_STUB IAttrTypeMng_GetAttrTypes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAttrTypeMng_INTERFACE_DEFINED__ */


#ifndef __IVariable7_INTERFACE_DEFINED__
#define __IVariable7_INTERFACE_DEFINED__

/* interface IVariable7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IVariable7,0x8BAB52D9,0x8EF6,0x43a6,0xA1,0xB8,0xAF,0x42,0xD5,0x96,0x1A,0x94);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8BAB52D9-8EF6-43a6-A1B8-AF42D5961A94")
    IVariable7 : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Note( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Note( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_External( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_External( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Information( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Information( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Expression( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Expression( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParameterNote( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisplayName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinkVariableName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinkDocumentName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLink( 
            /* [in] */ BSTR DocumentName,
            /* [in] */ BSTR VariableName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVariable7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IVariable7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IVariable7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IVariable7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Note )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Note )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_External )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_External )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Information )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Information )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Expression )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Expression )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParameterNote )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DisplayName )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LinkVariableName )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LinkDocumentName )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLink )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ BSTR DocumentName,
            /* [in] */ BSTR VariableName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IVariable7 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IVariable7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IVariable7Vtbl;

    interface IVariable7
    {
        CONST_VTBL struct IVariable7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IVariable7_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IVariable7_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IVariable7_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IVariable7_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IVariable7_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IVariable7_put_Note(This,NewVal)	\
    (This)->lpVtbl -> put_Note(This,NewVal)

#define IVariable7_get_Note(This,PVal)	\
    (This)->lpVtbl -> get_Note(This,PVal)

#define IVariable7_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IVariable7_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IVariable7_put_External(This,NewVal)	\
    (This)->lpVtbl -> put_External(This,NewVal)

#define IVariable7_get_External(This,PVal)	\
    (This)->lpVtbl -> get_External(This,PVal)

#define IVariable7_put_Information(This,NewVal)	\
    (This)->lpVtbl -> put_Information(This,NewVal)

#define IVariable7_get_Information(This,PVal)	\
    (This)->lpVtbl -> get_Information(This,PVal)

#define IVariable7_put_Expression(This,NewVal)	\
    (This)->lpVtbl -> put_Expression(This,NewVal)

#define IVariable7_get_Expression(This,PVal)	\
    (This)->lpVtbl -> get_Expression(This,PVal)

#define IVariable7_get_ParameterNote(This,PVal)	\
    (This)->lpVtbl -> get_ParameterNote(This,PVal)

#define IVariable7_get_DisplayName(This,PVal)	\
    (This)->lpVtbl -> get_DisplayName(This,PVal)

#define IVariable7_get_LinkVariableName(This,PVal)	\
    (This)->lpVtbl -> get_LinkVariableName(This,PVal)

#define IVariable7_get_LinkDocumentName(This,PVal)	\
    (This)->lpVtbl -> get_LinkDocumentName(This,PVal)

#define IVariable7_SetLink(This,DocumentName,VariableName,PVal)	\
    (This)->lpVtbl -> SetLink(This,DocumentName,VariableName,PVal)

#define IVariable7_Delete(This,PVal)	\
    (This)->lpVtbl -> Delete(This,PVal)

#define IVariable7_put_ReadOnly(This,NewVal)	\
    (This)->lpVtbl -> put_ReadOnly(This,NewVal)

#define IVariable7_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_Name_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariable7_put_Note_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IVariable7_put_Note_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_Note_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_Note_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariable7_put_Value_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IVariable7_put_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_Value_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariable7_put_External_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IVariable7_put_External_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_External_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_External_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariable7_put_Information_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IVariable7_put_Information_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_Information_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_Information_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariable7_put_Expression_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IVariable7_put_Expression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_Expression_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_Expression_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_ParameterNote_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_ParameterNote_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_DisplayName_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_DisplayName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_LinkVariableName_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_LinkVariableName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_LinkDocumentName_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_LinkDocumentName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariable7_SetLink_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ BSTR DocumentName,
    /* [in] */ BSTR VariableName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariable7_SetLink_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariable7_Delete_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariable7_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariable7_put_ReadOnly_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IVariable7_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariable7_get_ReadOnly_Proxy( 
    IVariable7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariable7_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVariable7_INTERFACE_DEFINED__ */


#ifndef __IMath2D_INTERFACE_DEFINED__
#define __IMath2D_INTERFACE_DEFINED__

/* interface IMath2D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMath2D,0x0409EC8F,0x88F7,0x4242,0x81,0xE7,0x96,0x5A,0xBE,0xAE,0x93,0x2C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0409EC8F-88F7-4242-81E7-965ABEAE932C")
    IMath2D : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Line( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE LineSeg( 
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Arc( 
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double Radius,
            /* [in] */ double Angle1,
            /* [in] */ double Angle2,
            /* [in] */ VARIANT_BOOL Direction,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Circle( 
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double Radius,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE PolyLine( 
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT_BOOL Closed,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Ellipse( 
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double A,
            /* [in] */ double B,
            /* [in] */ double Angle,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE EllipseArc( 
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double A,
            /* [in] */ double B,
            /* [in] */ double Angle,
            /* [in] */ double Angle1,
            /* [in] */ double Angle2,
            /* [in] */ VARIANT_BOOL Direction,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Bezier( 
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ VARIANT_BOOL AllPoints,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Nurbs( 
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ long Degree,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weights,
            /* [in] */ VARIANT Knots,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Symmetry( 
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ ICurve2D __RPC_FAR *Curve,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Rotate( 
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double Angle,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE MovePoint( 
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ double Angle,
            /* [in] */ double Len,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMath2DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMath2D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMath2D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMath2D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMath2D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMath2D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMath2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMath2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Line )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LineSeg )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Arc )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double Radius,
            /* [in] */ double Angle1,
            /* [in] */ double Angle2,
            /* [in] */ VARIANT_BOOL Direction,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Circle )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double Radius,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PolyLine )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT_BOOL Closed,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Ellipse )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double A,
            /* [in] */ double B,
            /* [in] */ double Angle,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EllipseArc )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double A,
            /* [in] */ double B,
            /* [in] */ double Angle,
            /* [in] */ double Angle1,
            /* [in] */ double Angle2,
            /* [in] */ VARIANT_BOOL Direction,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Bezier )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ VARIANT_BOOL AllPoints,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Nurbs )( 
            IMath2D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ long Degree,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weights,
            /* [in] */ VARIANT Knots,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Symmetry )( 
            IMath2D __RPC_FAR * This,
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ ICurve2D __RPC_FAR *Curve,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Rotate )( 
            IMath2D __RPC_FAR * This,
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ double Xc,
            /* [in] */ double Yc,
            /* [in] */ double Angle,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MovePoint )( 
            IMath2D __RPC_FAR * This,
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ double Angle,
            /* [in] */ double Len,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IMath2DVtbl;

    interface IMath2D
    {
        CONST_VTBL struct IMath2DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IMath2D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMath2D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMath2D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMath2D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMath2D_Line(This,X,Y,Angle,PRes)	\
    (This)->lpVtbl -> Line(This,X,Y,Angle,PRes)

#define IMath2D_LineSeg(This,X1,Y1,X2,Y2,PRes)	\
    (This)->lpVtbl -> LineSeg(This,X1,Y1,X2,Y2,PRes)

#define IMath2D_Arc(This,Xc,Yc,Radius,Angle1,Angle2,Direction,PRes)	\
    (This)->lpVtbl -> Arc(This,Xc,Yc,Radius,Angle1,Angle2,Direction,PRes)

#define IMath2D_Circle(This,Xc,Yc,Radius,PRes)	\
    (This)->lpVtbl -> Circle(This,Xc,Yc,Radius,PRes)

#define IMath2D_PolyLine(This,Points,Closed,PRes)	\
    (This)->lpVtbl -> PolyLine(This,Points,Closed,PRes)

#define IMath2D_Ellipse(This,Xc,Yc,A,B,Angle,PRes)	\
    (This)->lpVtbl -> Ellipse(This,Xc,Yc,A,B,Angle,PRes)

#define IMath2D_EllipseArc(This,Xc,Yc,A,B,Angle,Angle1,Angle2,Direction,PRes)	\
    (This)->lpVtbl -> EllipseArc(This,Xc,Yc,A,B,Angle,Angle1,Angle2,Direction,PRes)

#define IMath2D_Bezier(This,Closed,AllPoints,Points,PRes)	\
    (This)->lpVtbl -> Bezier(This,Closed,AllPoints,Points,PRes)

#define IMath2D_Nurbs(This,Closed,Degree,Points,Weights,Knots,PRes)	\
    (This)->lpVtbl -> Nurbs(This,Closed,Degree,Points,Weights,Knots,PRes)

#define IMath2D_Symmetry(This,X,Y,Curve,Result)	\
    (This)->lpVtbl -> Symmetry(This,X,Y,Curve,Result)

#define IMath2D_Rotate(This,X,Y,Xc,Yc,Angle,Result)	\
    (This)->lpVtbl -> Rotate(This,X,Y,Xc,Yc,Angle,Result)

#define IMath2D_MovePoint(This,X,Y,Angle,Len,Result)	\
    (This)->lpVtbl -> MovePoint(This,X,Y,Angle,Len,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Line_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Angle,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_LineSeg_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ double X1,
    /* [in] */ double Y1,
    /* [in] */ double X2,
    /* [in] */ double Y2,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_LineSeg_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Arc_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ double Xc,
    /* [in] */ double Yc,
    /* [in] */ double Radius,
    /* [in] */ double Angle1,
    /* [in] */ double Angle2,
    /* [in] */ VARIANT_BOOL Direction,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_Arc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Circle_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ double Xc,
    /* [in] */ double Yc,
    /* [in] */ double Radius,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_Circle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_PolyLine_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT_BOOL Closed,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_PolyLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Ellipse_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ double Xc,
    /* [in] */ double Yc,
    /* [in] */ double A,
    /* [in] */ double B,
    /* [in] */ double Angle,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_Ellipse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_EllipseArc_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ double Xc,
    /* [in] */ double Yc,
    /* [in] */ double A,
    /* [in] */ double B,
    /* [in] */ double Angle,
    /* [in] */ double Angle1,
    /* [in] */ double Angle2,
    /* [in] */ VARIANT_BOOL Direction,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_EllipseArc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Bezier_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Closed,
    /* [in] */ VARIANT_BOOL AllPoints,
    /* [in] */ VARIANT Points,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_Bezier_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Nurbs_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Closed,
    /* [in] */ long Degree,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Weights,
    /* [in] */ VARIANT Knots,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IMath2D_Nurbs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Symmetry_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [out][in] */ double __RPC_FAR *X,
    /* [out][in] */ double __RPC_FAR *Y,
    /* [in] */ ICurve2D __RPC_FAR *Curve,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMath2D_Symmetry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_Rotate_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [out][in] */ double __RPC_FAR *X,
    /* [out][in] */ double __RPC_FAR *Y,
    /* [in] */ double Xc,
    /* [in] */ double Yc,
    /* [in] */ double Angle,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMath2D_Rotate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMath2D_MovePoint_Proxy( 
    IMath2D __RPC_FAR * This,
    /* [out][in] */ double __RPC_FAR *X,
    /* [out][in] */ double __RPC_FAR *Y,
    /* [in] */ double Angle,
    /* [in] */ double Len,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMath2D_MovePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMath2D_INTERFACE_DEFINED__ */


#ifndef __ISelectionManager_INTERFACE_DEFINED__
#define __ISelectionManager_INTERFACE_DEFINED__

/* interface ISelectionManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISelectionManager,0xE6DF688C,0x5B23,0x436b,0xA0,0x27,0xA9,0x6B,0xFD,0x54,0x84,0xCC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E6DF688C-5B23-436b-A027-A96BFD5484CC")
    ISelectionManager : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Select( 
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Unselect( 
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE UnselectAll( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsSelected( 
            /* [in] */ IKompasAPIObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SelectedObjects( 
            /* [retval][out] */ VARIANT __RPC_FAR *Objects) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISelectionManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISelectionManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISelectionManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISelectionManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISelectionManager __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISelectionManager __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISelectionManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISelectionManager __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Select )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unselect )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UnselectAll )( 
            ISelectionManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsSelected )( 
            ISelectionManager __RPC_FAR * This,
            /* [in] */ IKompasAPIObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SelectedObjects )( 
            ISelectionManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Objects);
        
        END_INTERFACE
    } ISelectionManagerVtbl;

    interface ISelectionManager
    {
        CONST_VTBL struct ISelectionManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ISelectionManager_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISelectionManager_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISelectionManager_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISelectionManager_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISelectionManager_Select(This,Objects,Result)	\
    (This)->lpVtbl -> Select(This,Objects,Result)

#define ISelectionManager_Unselect(This,Objects,Result)	\
    (This)->lpVtbl -> Unselect(This,Objects,Result)

#define ISelectionManager_UnselectAll(This,Result)	\
    (This)->lpVtbl -> UnselectAll(This,Result)

#define ISelectionManager_IsSelected(This,Object,Result)	\
    (This)->lpVtbl -> IsSelected(This,Object,Result)

#define ISelectionManager_get_SelectedObjects(This,Objects)	\
    (This)->lpVtbl -> get_SelectedObjects(This,Objects)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISelectionManager_Select_Proxy( 
    ISelectionManager __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISelectionManager_Select_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISelectionManager_Unselect_Proxy( 
    ISelectionManager __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISelectionManager_Unselect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISelectionManager_UnselectAll_Proxy( 
    ISelectionManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISelectionManager_UnselectAll_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISelectionManager_IsSelected_Proxy( 
    ISelectionManager __RPC_FAR * This,
    /* [in] */ IKompasAPIObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISelectionManager_IsSelected_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISelectionManager_get_SelectedObjects_Proxy( 
    ISelectionManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Objects);


void __RPC_STUB ISelectionManager_get_SelectedObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISelectionManager_INTERFACE_DEFINED__ */


#ifndef __IChooseManager_INTERFACE_DEFINED__
#define __IChooseManager_INTERFACE_DEFINED__

/* interface IChooseManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IChooseManager,0xE2D9EAA6,0xF88C,0x4adb,0xAC,0x32,0x85,0x4E,0x32,0xE9,0xFE,0xE1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E2D9EAA6-F88C-4adb-AC32-854E32E9FEE1")
    IChooseManager : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Choose( 
            /* [in] */ VARIANT objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Unchoose( 
            /* [in] */ VARIANT objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE UnchooseAll( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IsChoosen( 
            /* [in] */ IKompasAPIObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ChoosenObjects( 
            /* [retval][out] */ VARIANT __RPC_FAR *objects) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IChooseManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IChooseManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IChooseManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IChooseManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IChooseManager __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IChooseManager __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IChooseManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IChooseManager __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Choose )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ VARIANT objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unchoose )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ VARIANT objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UnchooseAll )( 
            IChooseManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsChoosen )( 
            IChooseManager __RPC_FAR * This,
            /* [in] */ IKompasAPIObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChoosenObjects )( 
            IChooseManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *objects);
        
        END_INTERFACE
    } IChooseManagerVtbl;

    interface IChooseManager
    {
        CONST_VTBL struct IChooseManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IChooseManager_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IChooseManager_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IChooseManager_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IChooseManager_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IChooseManager_Choose(This,objects,result)	\
    (This)->lpVtbl -> Choose(This,objects,result)

#define IChooseManager_Unchoose(This,objects,result)	\
    (This)->lpVtbl -> Unchoose(This,objects,result)

#define IChooseManager_UnchooseAll(This,result)	\
    (This)->lpVtbl -> UnchooseAll(This,result)

#define IChooseManager_IsChoosen(This,Object,result)	\
    (This)->lpVtbl -> IsChoosen(This,Object,result)

#define IChooseManager_get_ChoosenObjects(This,objects)	\
    (This)->lpVtbl -> get_ChoosenObjects(This,objects)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IChooseManager_Choose_Proxy( 
    IChooseManager __RPC_FAR * This,
    /* [in] */ VARIANT objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB IChooseManager_Choose_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IChooseManager_Unchoose_Proxy( 
    IChooseManager __RPC_FAR * This,
    /* [in] */ VARIANT objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB IChooseManager_Unchoose_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IChooseManager_UnchooseAll_Proxy( 
    IChooseManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB IChooseManager_UnchooseAll_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IChooseManager_IsChoosen_Proxy( 
    IChooseManager __RPC_FAR * This,
    /* [in] */ IKompasAPIObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB IChooseManager_IsChoosen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChooseManager_get_ChoosenObjects_Proxy( 
    IChooseManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *objects);


void __RPC_STUB IChooseManager_get_ChoosenObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IChooseManager_INTERFACE_DEFINED__ */


#ifndef __IStamp_INTERFACE_DEFINED__
#define __IStamp_INTERFACE_DEFINED__

/* interface IStamp */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IStamp,0x250CE350,0x7C21,0x47fd,0x8F,0xF2,0xC4,0x4A,0x9F,0xF1,0x77,0xDF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("250CE350-7C21-47fd-8FF2-C44A9FF177DF")
    IStamp : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [in] */ long Id,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [in] */ long Id,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNextColumnId( 
            /* [in] */ long Id,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IStampVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IStamp __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IStamp __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IStamp __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IStamp __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IStamp __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IStamp __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IStamp __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IStamp __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IStamp __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IStamp __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IStamp __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IStamp __RPC_FAR * This,
            /* [in] */ long Id,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IStamp __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IStamp __RPC_FAR * This,
            /* [in] */ long Id,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextColumnId )( 
            IStamp __RPC_FAR * This,
            /* [in] */ long Id,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IStampVtbl;

    interface IStamp
    {
        CONST_VTBL struct IStampVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IStamp_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IStamp_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IStamp_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IStamp_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IStamp_get_Text(This,Id,PVal)	\
    (This)->lpVtbl -> get_Text(This,Id,PVal)

#define IStamp_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IStamp_Clear(This,Id,PRes)	\
    (This)->lpVtbl -> Clear(This,Id,PRes)

#define IStamp_GetNextColumnId(This,Id,PVal)	\
    (This)->lpVtbl -> GetNextColumnId(This,Id,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStamp_get_Text_Proxy( 
    IStamp __RPC_FAR * This,
    /* [in] */ long Id,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IStamp_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IStamp_Update_Proxy( 
    IStamp __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IStamp_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IStamp_Clear_Proxy( 
    IStamp __RPC_FAR * This,
    /* [in] */ long Id,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IStamp_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IStamp_GetNextColumnId_Proxy( 
    IStamp __RPC_FAR * This,
    /* [in] */ long Id,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IStamp_GetNextColumnId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IStamp_INTERFACE_DEFINED__ */


#ifndef __IPrintJob_INTERFACE_DEFINED__
#define __IPrintJob_INTERFACE_DEFINED__

/* interface IPrintJob */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPrintJob,0x9D86880B,0xC004,0x475d,0x82,0x21,0xB7,0x86,0xFD,0x5A,0x22,0x8B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9D86880B-C004-475d-8221-B786FD5A228B")
    IPrintJob : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ShowPreviewWindow( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Load( 
            /* [in] */ BSTR FileName,
            /* [out] */ VARIANT __RPC_FAR *Errors,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Save( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Execute( 
            /* [in] */ BSTR OutputFileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSheets( 
            /* [in] */ BSTR FileName,
            /* [in] */ VARIANT Sheets,
            /* [in] */ /* external definition not present */ ksSheetsRangeEnum Range,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetsCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sheet( 
            /* [in] */ long Index,
            /* [retval][out] */ IPrintJob_Sheet __RPC_FAR *__RPC_FAR *Sheet) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveSheets( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PagesCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPageGabarites( 
            /* [out] */ double __RPC_FAR *Width,
            /* [out] */ double __RPC_FAR *Height,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPagesMapGabarites( 
            /* [out] */ long __RPC_FAR *WPageCount,
            /* [out] */ long __RPC_FAR *HPageCount,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PagePrintableFlag( 
            /* [in] */ long WPage,
            /* [in] */ long HPage,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PagePrintableFlag( 
            /* [in] */ long WPage,
            /* [in] */ long HPage,
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPrintJobVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPrintJob __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPrintJob __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPrintJob __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ShowPreviewWindow )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Load )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [out] */ VARIANT __RPC_FAR *Errors,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ BSTR OutputFileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddSheets )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [in] */ VARIANT Sheets,
            /* [in] */ /* external definition not present */ ksSheetsRangeEnum Range,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetsCount )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sheet )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ IPrintJob_Sheet __RPC_FAR *__RPC_FAR *Sheet);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveSheets )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PagesCount )( 
            IPrintJob __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPageGabarites )( 
            IPrintJob __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *Width,
            /* [out] */ double __RPC_FAR *Height,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPagesMapGabarites )( 
            IPrintJob __RPC_FAR * This,
            /* [out] */ long __RPC_FAR *WPageCount,
            /* [out] */ long __RPC_FAR *HPageCount,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PagePrintableFlag )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ long WPage,
            /* [in] */ long HPage,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PagePrintableFlag )( 
            IPrintJob __RPC_FAR * This,
            /* [in] */ long WPage,
            /* [in] */ long HPage,
            /* [in] */ VARIANT_BOOL NewVal);
        
        END_INTERFACE
    } IPrintJobVtbl;

    interface IPrintJob
    {
        CONST_VTBL struct IPrintJobVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPrintJob_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPrintJob_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPrintJob_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPrintJob_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPrintJob_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#define IPrintJob_ShowPreviewWindow(This,Result)	\
    (This)->lpVtbl -> ShowPreviewWindow(This,Result)

#define IPrintJob_Load(This,FileName,Errors,Result)	\
    (This)->lpVtbl -> Load(This,FileName,Errors,Result)

#define IPrintJob_Save(This,FileName,Result)	\
    (This)->lpVtbl -> Save(This,FileName,Result)

#define IPrintJob_Execute(This,OutputFileName,Result)	\
    (This)->lpVtbl -> Execute(This,OutputFileName,Result)

#define IPrintJob_AddSheets(This,FileName,Sheets,Range,Result)	\
    (This)->lpVtbl -> AddSheets(This,FileName,Sheets,Range,Result)

#define IPrintJob_get_SheetsCount(This,Count)	\
    (This)->lpVtbl -> get_SheetsCount(This,Count)

#define IPrintJob_get_Sheet(This,Index,Sheet)	\
    (This)->lpVtbl -> get_Sheet(This,Index,Sheet)

#define IPrintJob_RemoveSheets(This,Index,Result)	\
    (This)->lpVtbl -> RemoveSheets(This,Index,Result)

#define IPrintJob_get_PagesCount(This,Count)	\
    (This)->lpVtbl -> get_PagesCount(This,Count)

#define IPrintJob_GetPageGabarites(This,Width,Height,Result)	\
    (This)->lpVtbl -> GetPageGabarites(This,Width,Height,Result)

#define IPrintJob_GetPagesMapGabarites(This,WPageCount,HPageCount,Result)	\
    (This)->lpVtbl -> GetPagesMapGabarites(This,WPageCount,HPageCount,Result)

#define IPrintJob_get_PagePrintableFlag(This,WPage,HPage,Result)	\
    (This)->lpVtbl -> get_PagePrintableFlag(This,WPage,HPage,Result)

#define IPrintJob_put_PagePrintableFlag(This,WPage,HPage,NewVal)	\
    (This)->lpVtbl -> put_PagePrintableFlag(This,WPage,HPage,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Clear_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_ShowPreviewWindow_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_ShowPreviewWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Load_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [out] */ VARIANT __RPC_FAR *Errors,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Load_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Save_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Save_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Execute_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ BSTR OutputFileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Execute_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_AddSheets_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [in] */ VARIANT Sheets,
    /* [in] */ /* external definition not present */ ksSheetsRangeEnum Range,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_AddSheets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_get_SheetsCount_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPrintJob_get_SheetsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_get_Sheet_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ IPrintJob_Sheet __RPC_FAR *__RPC_FAR *Sheet);


void __RPC_STUB IPrintJob_get_Sheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_RemoveSheets_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_RemoveSheets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_get_PagesCount_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPrintJob_get_PagesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_GetPageGabarites_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *Width,
    /* [out] */ double __RPC_FAR *Height,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_GetPageGabarites_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_GetPagesMapGabarites_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [out] */ long __RPC_FAR *WPageCount,
    /* [out] */ long __RPC_FAR *HPageCount,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_GetPagesMapGabarites_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_get_PagePrintableFlag_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ long WPage,
    /* [in] */ long HPage,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_get_PagePrintableFlag_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_put_PagePrintableFlag_Proxy( 
    IPrintJob __RPC_FAR * This,
    /* [in] */ long WPage,
    /* [in] */ long HPage,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_put_PagePrintableFlag_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPrintJob_INTERFACE_DEFINED__ */


#ifndef __IPrintJob_Sheet_INTERFACE_DEFINED__
#define __IPrintJob_Sheet_INTERFACE_DEFINED__

/* interface IPrintJob_Sheet */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPrintJob_Sheet,0x0EC985BC,0x81FC,0x498e,0xBF,0x15,0x03,0xDD,0xC8,0x70,0xAA,0x33);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0EC985BC-81FC-498e-BF15-03DDC870AA33")
    IPrintJob_Sheet : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentName( 
            /* [retval][out] */ BSTR __RPC_FAR *DocumentName) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *Number) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGabarites( 
            /* [out] */ double __RPC_FAR *Width,
            /* [out] */ double __RPC_FAR *Height,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Orientation( 
            /* [retval][out] */ /* external definition not present */ ksAngleEnum __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Orientation( 
            /* [in] */ /* external definition not present */ ksAngleEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClipFlag( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Flag) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClipFlag( 
            /* [in] */ VARIANT_BOOL Flag) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetClipFrameGabarites( 
            /* [out] */ double __RPC_FAR *Left,
            /* [out] */ double __RPC_FAR *Bottom,
            /* [out] */ double __RPC_FAR *Right,
            /* [out] */ double __RPC_FAR *Top,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetClipFrameGabarites( 
            /* [in] */ double Left,
            /* [in] */ double Bottom,
            /* [in] */ double Right,
            /* [in] */ double Top,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPrintJob_SheetVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPrintJob_Sheet __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPrintJob_Sheet __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentName )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *DocumentName);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Number);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGabarites )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *Width,
            /* [out] */ double __RPC_FAR *Height,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Orientation )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAngleEnum __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Orientation )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAngleEnum Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ClipFlag )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Flag);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ClipFlag )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Flag);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetClipFrameGabarites )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *Left,
            /* [out] */ double __RPC_FAR *Bottom,
            /* [out] */ double __RPC_FAR *Right,
            /* [out] */ double __RPC_FAR *Top,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetClipFrameGabarites )( 
            IPrintJob_Sheet __RPC_FAR * This,
            /* [in] */ double Left,
            /* [in] */ double Bottom,
            /* [in] */ double Right,
            /* [in] */ double Top,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IPrintJob_SheetVtbl;

    interface IPrintJob_Sheet
    {
        CONST_VTBL struct IPrintJob_SheetVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPrintJob_Sheet_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPrintJob_Sheet_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPrintJob_Sheet_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPrintJob_Sheet_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPrintJob_Sheet_get_DocumentName(This,DocumentName)	\
    (This)->lpVtbl -> get_DocumentName(This,DocumentName)

#define IPrintJob_Sheet_get_Number(This,Number)	\
    (This)->lpVtbl -> get_Number(This,Number)

#define IPrintJob_Sheet_GetGabarites(This,Width,Height,Result)	\
    (This)->lpVtbl -> GetGabarites(This,Width,Height,Result)

#define IPrintJob_Sheet_get_Orientation(This,Value)	\
    (This)->lpVtbl -> get_Orientation(This,Value)

#define IPrintJob_Sheet_put_Orientation(This,Value)	\
    (This)->lpVtbl -> put_Orientation(This,Value)

#define IPrintJob_Sheet_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IPrintJob_Sheet_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IPrintJob_Sheet_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IPrintJob_Sheet_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IPrintJob_Sheet_put_Scale(This,NewVal)	\
    (This)->lpVtbl -> put_Scale(This,NewVal)

#define IPrintJob_Sheet_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IPrintJob_Sheet_get_ClipFlag(This,Flag)	\
    (This)->lpVtbl -> get_ClipFlag(This,Flag)

#define IPrintJob_Sheet_put_ClipFlag(This,Flag)	\
    (This)->lpVtbl -> put_ClipFlag(This,Flag)

#define IPrintJob_Sheet_GetClipFrameGabarites(This,Left,Bottom,Right,Top,Result)	\
    (This)->lpVtbl -> GetClipFrameGabarites(This,Left,Bottom,Right,Top,Result)

#define IPrintJob_Sheet_SetClipFrameGabarites(This,Left,Bottom,Right,Top,Result)	\
    (This)->lpVtbl -> SetClipFrameGabarites(This,Left,Bottom,Right,Top,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_DocumentName_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *DocumentName);


void __RPC_STUB IPrintJob_Sheet_get_DocumentName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_Number_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Number);


void __RPC_STUB IPrintJob_Sheet_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_GetGabarites_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *Width,
    /* [out] */ double __RPC_FAR *Height,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Sheet_GetGabarites_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_Orientation_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAngleEnum __RPC_FAR *Value);


void __RPC_STUB IPrintJob_Sheet_get_Orientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_put_Orientation_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAngleEnum Value);


void __RPC_STUB IPrintJob_Sheet_put_Orientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_put_X_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPrintJob_Sheet_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_X_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_Sheet_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_put_Y_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPrintJob_Sheet_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_Y_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_Sheet_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_put_Scale_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPrintJob_Sheet_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_Scale_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_Sheet_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_get_ClipFlag_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Flag);


void __RPC_STUB IPrintJob_Sheet_get_ClipFlag_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_put_ClipFlag_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Flag);


void __RPC_STUB IPrintJob_Sheet_put_ClipFlag_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_GetClipFrameGabarites_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *Left,
    /* [out] */ double __RPC_FAR *Bottom,
    /* [out] */ double __RPC_FAR *Right,
    /* [out] */ double __RPC_FAR *Top,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Sheet_GetClipFrameGabarites_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPrintJob_Sheet_SetClipFrameGabarites_Proxy( 
    IPrintJob_Sheet __RPC_FAR * This,
    /* [in] */ double Left,
    /* [in] */ double Bottom,
    /* [in] */ double Right,
    /* [in] */ double Top,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPrintJob_Sheet_SetClipFrameGabarites_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPrintJob_Sheet_INTERFACE_DEFINED__ */


#ifndef __IPrintJob_OutputParameters_INTERFACE_DEFINED__
#define __IPrintJob_OutputParameters_INTERFACE_DEFINED__

/* interface IPrintJob_OutputParameters */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPrintJob_OutputParameters,0xCB083231,0xEE0D,0x4596,0xB0,0x4D,0xE6,0xA0,0x20,0x92,0x65,0x57);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CB083231-EE0D-4596-B04D-E6A020926557")
    IPrintJob_OutputParameters : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NumberOfCopies( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfCopies( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CollateCopies( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CollateCopies( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlotToFile( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlotToFile( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ /* external definition not present */ ksOutputColorTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ /* external definition not present */ ksOutputColorTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OnlyThinLines( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OnlyThinLines( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AlternativeFillingOutput( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AlternativeFillingOutput( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AccuracyModelOutput( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AccuracyModelOutput( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PageOutputOrder( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PageOutputOrder( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DefaultScale( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultScale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoScale( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoScale( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseCatchSpacing( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseCatchSpacing( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CatchSpacing( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CatchSpacing( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseHooking( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseHooking( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Hooking( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Hooking( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPrintJob_OutputParametersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPrintJob_OutputParameters __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPrintJob_OutputParameters __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NumberOfCopies )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NumberOfCopies )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CollateCopies )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CollateCopies )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PlotToFile )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PlotToFile )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksOutputColorTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksOutputColorTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OnlyThinLines )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OnlyThinLines )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AlternativeFillingOutput )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AlternativeFillingOutput )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AccuracyModelOutput )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AccuracyModelOutput )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PageOutputOrder )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PageOutputOrder )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefaultScale )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultScale )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoScale )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoScale )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UseCatchSpacing )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseCatchSpacing )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CatchSpacing )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CatchSpacing )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UseHooking )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseHooking )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hooking )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hooking )( 
            IPrintJob_OutputParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPrintJob_OutputParametersVtbl;

    interface IPrintJob_OutputParameters
    {
        CONST_VTBL struct IPrintJob_OutputParametersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPrintJob_OutputParameters_put_NumberOfCopies(This,NewVal)	\
    (This)->lpVtbl -> put_NumberOfCopies(This,NewVal)

#define IPrintJob_OutputParameters_get_NumberOfCopies(This,PVal)	\
    (This)->lpVtbl -> get_NumberOfCopies(This,PVal)

#define IPrintJob_OutputParameters_put_CollateCopies(This,NewVal)	\
    (This)->lpVtbl -> put_CollateCopies(This,NewVal)

#define IPrintJob_OutputParameters_get_CollateCopies(This,PVal)	\
    (This)->lpVtbl -> get_CollateCopies(This,PVal)

#define IPrintJob_OutputParameters_put_PlotToFile(This,NewVal)	\
    (This)->lpVtbl -> put_PlotToFile(This,NewVal)

#define IPrintJob_OutputParameters_get_PlotToFile(This,PVal)	\
    (This)->lpVtbl -> get_PlotToFile(This,PVal)

#define IPrintJob_OutputParameters_put_Color(This,NewVal)	\
    (This)->lpVtbl -> put_Color(This,NewVal)

#define IPrintJob_OutputParameters_get_Color(This,PVal)	\
    (This)->lpVtbl -> get_Color(This,PVal)

#define IPrintJob_OutputParameters_put_OnlyThinLines(This,NewVal)	\
    (This)->lpVtbl -> put_OnlyThinLines(This,NewVal)

#define IPrintJob_OutputParameters_get_OnlyThinLines(This,PVal)	\
    (This)->lpVtbl -> get_OnlyThinLines(This,PVal)

#define IPrintJob_OutputParameters_put_AlternativeFillingOutput(This,NewVal)	\
    (This)->lpVtbl -> put_AlternativeFillingOutput(This,NewVal)

#define IPrintJob_OutputParameters_get_AlternativeFillingOutput(This,PVal)	\
    (This)->lpVtbl -> get_AlternativeFillingOutput(This,PVal)

#define IPrintJob_OutputParameters_put_AccuracyModelOutput(This,NewVal)	\
    (This)->lpVtbl -> put_AccuracyModelOutput(This,NewVal)

#define IPrintJob_OutputParameters_get_AccuracyModelOutput(This,PVal)	\
    (This)->lpVtbl -> get_AccuracyModelOutput(This,PVal)

#define IPrintJob_OutputParameters_put_PageOutputOrder(This,NewVal)	\
    (This)->lpVtbl -> put_PageOutputOrder(This,NewVal)

#define IPrintJob_OutputParameters_get_PageOutputOrder(This,PVal)	\
    (This)->lpVtbl -> get_PageOutputOrder(This,PVal)

#define IPrintJob_OutputParameters_put_DefaultScale(This,NewVal)	\
    (This)->lpVtbl -> put_DefaultScale(This,NewVal)

#define IPrintJob_OutputParameters_get_DefaultScale(This,PVal)	\
    (This)->lpVtbl -> get_DefaultScale(This,PVal)

#define IPrintJob_OutputParameters_put_AutoScale(This,NewVal)	\
    (This)->lpVtbl -> put_AutoScale(This,NewVal)

#define IPrintJob_OutputParameters_get_AutoScale(This,PVal)	\
    (This)->lpVtbl -> get_AutoScale(This,PVal)

#define IPrintJob_OutputParameters_put_UseCatchSpacing(This,NewVal)	\
    (This)->lpVtbl -> put_UseCatchSpacing(This,NewVal)

#define IPrintJob_OutputParameters_get_UseCatchSpacing(This,PVal)	\
    (This)->lpVtbl -> get_UseCatchSpacing(This,PVal)

#define IPrintJob_OutputParameters_put_CatchSpacing(This,NewVal)	\
    (This)->lpVtbl -> put_CatchSpacing(This,NewVal)

#define IPrintJob_OutputParameters_get_CatchSpacing(This,PVal)	\
    (This)->lpVtbl -> get_CatchSpacing(This,PVal)

#define IPrintJob_OutputParameters_put_UseHooking(This,NewVal)	\
    (This)->lpVtbl -> put_UseHooking(This,NewVal)

#define IPrintJob_OutputParameters_get_UseHooking(This,PVal)	\
    (This)->lpVtbl -> get_UseHooking(This,PVal)

#define IPrintJob_OutputParameters_put_Hooking(This,NewVal)	\
    (This)->lpVtbl -> put_Hooking(This,NewVal)

#define IPrintJob_OutputParameters_get_Hooking(This,PVal)	\
    (This)->lpVtbl -> get_Hooking(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_NumberOfCopies_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_NumberOfCopies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_NumberOfCopies_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_NumberOfCopies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_CollateCopies_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_CollateCopies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_CollateCopies_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_CollateCopies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_PlotToFile_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_PlotToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_PlotToFile_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_PlotToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_Color_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksOutputColorTypeEnum NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_Color_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksOutputColorTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_OnlyThinLines_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_OnlyThinLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_OnlyThinLines_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_OnlyThinLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_AlternativeFillingOutput_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_AlternativeFillingOutput_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_AlternativeFillingOutput_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_AlternativeFillingOutput_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_AccuracyModelOutput_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_AccuracyModelOutput_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_AccuracyModelOutput_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_AccuracyModelOutput_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_PageOutputOrder_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_PageOutputOrder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_PageOutputOrder_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_PageOutputOrder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_DefaultScale_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_DefaultScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_DefaultScale_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_DefaultScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_AutoScale_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_AutoScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_AutoScale_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_AutoScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_UseCatchSpacing_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_UseCatchSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_UseCatchSpacing_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_UseCatchSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_CatchSpacing_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_CatchSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_CatchSpacing_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_CatchSpacing_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_UseHooking_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_UseHooking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_UseHooking_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_UseHooking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_put_Hooking_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPrintJob_OutputParameters_put_Hooking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPrintJob_OutputParameters_get_Hooking_Proxy( 
    IPrintJob_OutputParameters __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPrintJob_OutputParameters_get_Hooking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPrintJob_OutputParameters_INTERFACE_DEFINED__ */


#ifndef __IProperty_INTERFACE_DEFINED__
#define __IProperty_INTERFACE_DEFINED__

/* interface IProperty */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProperty,0xC389F80D,0x228D,0x4fb1,0xB1,0x83,0x95,0x9A,0xEA,0x0B,0x59,0x06);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C389F80D-228D-4fb1-B183-959AEA0B5906")
    IProperty : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DataType( 
            /* [in] */ /* external definition not present */ ksPropertyTypeEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DataType( 
            /* [retval][out] */ /* external definition not present */ ksPropertyTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetValueRange( 
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignificantDigitsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignificantDigitsCount( 
            /* [in] */ long Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PropertyTypeId( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyTypeId( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnitId( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitId( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ViewEdit( 
            /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
            /* [in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseListVal( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseListVal( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ListVal( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ListVal( 
            /* [in] */ VARIANT Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProperty __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProperty __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProperty __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProperty __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProperty __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProperty __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProperty __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IProperty __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DataType )( 
            IProperty __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPropertyTypeEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DataType )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPropertyTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinValue )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MaxValue )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetValueRange )( 
            IProperty __RPC_FAR * This,
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IProperty __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignificantDigitsCount )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignificantDigitsCount )( 
            IProperty __RPC_FAR * This,
            /* [in] */ long Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceName )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IProperty __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PropertyTypeId )( 
            IProperty __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PropertyTypeId )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UnitId )( 
            IProperty __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnitId )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ViewEdit )( 
            IProperty __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
            /* [in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseListVal )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UseListVal )( 
            IProperty __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ListVal )( 
            IProperty __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ListVal )( 
            IProperty __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        END_INTERFACE
    } IPropertyVtbl;

    interface IProperty
    {
        CONST_VTBL struct IPropertyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IProperty_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProperty_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProperty_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProperty_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProperty_put_Name(This,PVal)	\
    (This)->lpVtbl -> put_Name(This,PVal)

#define IProperty_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IProperty_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IProperty_put_DataType(This,PVal)	\
    (This)->lpVtbl -> put_DataType(This,PVal)

#define IProperty_get_DataType(This,PVal)	\
    (This)->lpVtbl -> get_DataType(This,PVal)

#define IProperty_get_MinValue(This,PVal)	\
    (This)->lpVtbl -> get_MinValue(This,PVal)

#define IProperty_get_MaxValue(This,PVal)	\
    (This)->lpVtbl -> get_MaxValue(This,PVal)

#define IProperty_SetValueRange(This,MinVal,MaxVal,PVal)	\
    (This)->lpVtbl -> SetValueRange(This,MinVal,MaxVal,PVal)

#define IProperty_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IProperty_put_ReadOnly(This,Val)	\
    (This)->lpVtbl -> put_ReadOnly(This,Val)

#define IProperty_get_SignificantDigitsCount(This,Result)	\
    (This)->lpVtbl -> get_SignificantDigitsCount(This,Result)

#define IProperty_put_SignificantDigitsCount(This,Result)	\
    (This)->lpVtbl -> put_SignificantDigitsCount(This,Result)

#define IProperty_get_SourceName(This,PVal)	\
    (This)->lpVtbl -> get_SourceName(This,PVal)

#define IProperty_put_Comment(This,PVal)	\
    (This)->lpVtbl -> put_Comment(This,PVal)

#define IProperty_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#define IProperty_put_PropertyTypeId(This,PVal)	\
    (This)->lpVtbl -> put_PropertyTypeId(This,PVal)

#define IProperty_get_PropertyTypeId(This,PVal)	\
    (This)->lpVtbl -> get_PropertyTypeId(This,PVal)

#define IProperty_put_UnitId(This,PVal)	\
    (This)->lpVtbl -> put_UnitId(This,PVal)

#define IProperty_get_UnitId(This,PVal)	\
    (This)->lpVtbl -> get_UnitId(This,PVal)

#define IProperty_ViewEdit(This,Parent,ReadOnly,Res)	\
    (This)->lpVtbl -> ViewEdit(This,Parent,ReadOnly,Res)

#define IProperty_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IProperty_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IProperty_get_UseListVal(This,PVal)	\
    (This)->lpVtbl -> get_UseListVal(This,PVal)

#define IProperty_put_UseListVal(This,Val)	\
    (This)->lpVtbl -> put_UseListVal(This,Val)

#define IProperty_get_ListVal(This,PVal)	\
    (This)->lpVtbl -> get_ListVal(This,PVal)

#define IProperty_put_ListVal(This,Val)	\
    (This)->lpVtbl -> put_ListVal(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_Name_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IProperty_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_Name_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_Id_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_DataType_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksPropertyTypeEnum PVal);


void __RPC_STUB IProperty_put_DataType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_DataType_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksPropertyTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_DataType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_MinValue_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_MinValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_MaxValue_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_MaxValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProperty_SetValueRange_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ VARIANT MinVal,
    /* [in] */ VARIANT MaxVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProperty_SetValueRange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_ReadOnly_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_ReadOnly_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IProperty_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_SignificantDigitsCount_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IProperty_get_SignificantDigitsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_SignificantDigitsCount_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ long Result);


void __RPC_STUB IProperty_put_SignificantDigitsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_SourceName_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_SourceName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_Comment_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IProperty_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_Comment_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_PropertyTypeId_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IProperty_put_PropertyTypeId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_PropertyTypeId_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_PropertyTypeId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_UnitId_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IProperty_put_UnitId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_UnitId_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_UnitId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProperty_ViewEdit_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE Parent,
    /* [in] */ VARIANT_BOOL ReadOnly,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IProperty_ViewEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProperty_Delete_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IProperty_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProperty_Update_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IProperty_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_UseListVal_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_UseListVal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_UseListVal_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IProperty_put_UseListVal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProperty_get_ListVal_Proxy( 
    IProperty __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IProperty_get_ListVal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProperty_put_ListVal_Proxy( 
    IProperty __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB IProperty_put_ListVal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProperty_INTERFACE_DEFINED__ */


#ifndef __IPropertyMng_INTERFACE_DEFINED__
#define __IPropertyMng_INTERFACE_DEFINED__

/* interface IPropertyMng */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyMng,0xFD515235,0x4DBA,0x4f81,0x8D,0x5C,0x6F,0xE8,0x7C,0x83,0x45,0x62);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FD515235-4DBA-4f81-8D5C-6FE87C834562")
    IPropertyMng : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyCount( 
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetProperty( 
            /* [in] */ VARIANT Libname,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IProperty __RPC_FAR *__RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetProperties( 
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ VARIANT __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddProperty( 
            /* [in] */ VARIANT Libname,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ IProperty __RPC_FAR *__RPC_FAR *ColVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveProperty( 
            /* [in] */ VARIANT Libname,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *ColVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyMngVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyMng __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyMng __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyMng __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PropertyCount )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperty )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IProperty __RPC_FAR *__RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProperties )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [retval][out] */ VARIANT __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddProperty )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ IProperty __RPC_FAR *__RPC_FAR *ColVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveProperty )( 
            IPropertyMng __RPC_FAR * This,
            /* [in] */ VARIANT Libname,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *ColVal);
        
        END_INTERFACE
    } IPropertyMngVtbl;

    interface IPropertyMng
    {
        CONST_VTBL struct IPropertyMngVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyMng_get_PropertyCount(This,Libname,Count)	\
    (This)->lpVtbl -> get_PropertyCount(This,Libname,Count)

#define IPropertyMng_GetProperty(This,Libname,Index,Res)	\
    (This)->lpVtbl -> GetProperty(This,Libname,Index,Res)

#define IPropertyMng_GetProperties(This,Libname,Res)	\
    (This)->lpVtbl -> GetProperties(This,Libname,Res)

#define IPropertyMng_AddProperty(This,Libname,Val,ColVal)	\
    (This)->lpVtbl -> AddProperty(This,Libname,Val,ColVal)

#define IPropertyMng_RemoveProperty(This,Libname,Val,ColVal)	\
    (This)->lpVtbl -> RemoveProperty(This,Libname,Val,ColVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMng_get_PropertyCount_Proxy( 
    IPropertyMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPropertyMng_get_PropertyCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyMng_GetProperty_Proxy( 
    IPropertyMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IProperty __RPC_FAR *__RPC_FAR *Res);


void __RPC_STUB IPropertyMng_GetProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyMng_GetProperties_Proxy( 
    IPropertyMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [retval][out] */ VARIANT __RPC_FAR *Res);


void __RPC_STUB IPropertyMng_GetProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyMng_AddProperty_Proxy( 
    IPropertyMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [in] */ VARIANT Val,
    /* [retval][out] */ IProperty __RPC_FAR *__RPC_FAR *ColVal);


void __RPC_STUB IPropertyMng_AddProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyMng_RemoveProperty_Proxy( 
    IPropertyMng __RPC_FAR * This,
    /* [in] */ VARIANT Libname,
    /* [in] */ VARIANT Val,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *ColVal);


void __RPC_STUB IPropertyMng_RemoveProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyMng_INTERFACE_DEFINED__ */


#ifndef __IPropertyKeeper_INTERFACE_DEFINED__
#define __IPropertyKeeper_INTERFACE_DEFINED__

/* interface IPropertyKeeper */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyKeeper,0xAE7377CB,0x28C6,0x468e,0xB6,0x67,0x73,0x11,0x7B,0xCD,0xC3,0x00);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AE7377CB-28C6-468e-B667-73117BCDC300")
    IPropertyKeeper : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPropertyValue( 
            /* [in] */ IProperty __RPC_FAR *Property,
            /* [out] */ VARIANT __RPC_FAR *Value,
            /* [in] */ VARIANT_BOOL BaseUnit,
            /* [out] */ VARIANT_BOOL __RPC_FAR *FromSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPropertyValue( 
            /* [in] */ IProperty __RPC_FAR *Property,
            /* [in] */ VARIANT Value,
            /* [in] */ VARIANT_BOOL BaseUnit,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyKeeperVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyKeeper __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyKeeper __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPropertyValue )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [in] */ IProperty __RPC_FAR *Property,
            /* [out] */ VARIANT __RPC_FAR *Value,
            /* [in] */ VARIANT_BOOL BaseUnit,
            /* [out] */ VARIANT_BOOL __RPC_FAR *FromSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPropertyValue )( 
            IPropertyKeeper __RPC_FAR * This,
            /* [in] */ IProperty __RPC_FAR *Property,
            /* [in] */ VARIANT Value,
            /* [in] */ VARIANT_BOOL BaseUnit,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IPropertyKeeperVtbl;

    interface IPropertyKeeper
    {
        CONST_VTBL struct IPropertyKeeperVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyKeeper_GetPropertyValue(This,Property,Value,BaseUnit,FromSource,Result)	\
    (This)->lpVtbl -> GetPropertyValue(This,Property,Value,BaseUnit,FromSource,Result)

#define IPropertyKeeper_SetPropertyValue(This,Property,Value,BaseUnit,Result)	\
    (This)->lpVtbl -> SetPropertyValue(This,Property,Value,BaseUnit,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyKeeper_GetPropertyValue_Proxy( 
    IPropertyKeeper __RPC_FAR * This,
    /* [in] */ IProperty __RPC_FAR *Property,
    /* [out] */ VARIANT __RPC_FAR *Value,
    /* [in] */ VARIANT_BOOL BaseUnit,
    /* [out] */ VARIANT_BOOL __RPC_FAR *FromSource,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPropertyKeeper_GetPropertyValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyKeeper_SetPropertyValue_Proxy( 
    IPropertyKeeper __RPC_FAR * This,
    /* [in] */ IProperty __RPC_FAR *Property,
    /* [in] */ VARIANT Value,
    /* [in] */ VARIANT_BOOL BaseUnit,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPropertyKeeper_SetPropertyValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyKeeper_INTERFACE_DEFINED__ */


#ifndef __IReportProcess_INTERFACE_DEFINED__
#define __IReportProcess_INTERFACE_DEFINED__

/* interface IReportProcess */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IReportProcess,0x29BBF2B8,0xA2E2,0x4e7d,0xBF,0x04,0x0B,0xB7,0x9C,0x89,0xEF,0x35);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("29BBF2B8-A2E2-4e7d-BF04-0BB79C89EF35")
    IReportProcess : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StylesCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveStyleIndex( 
            /* [in] */ VARIANT Index) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveStyleIndex( 
            /* [retval][out] */ VARIANT __RPC_FAR *Index) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReportFilter( 
            /* [retval][out] */ IReportFilter __RPC_FAR *__RPC_FAR *Filters) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReportFilterUse( 
            /* [in] */ VARIANT_BOOL Index) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReportFilterUse( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Index) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IReportProcessVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IReportProcess __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IReportProcess __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IReportProcess __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IReportProcess __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IReportProcess __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IReportProcess __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IReportProcess __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StylesCount )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveStyleIndex )( 
            IReportProcess __RPC_FAR * This,
            /* [in] */ VARIANT Index);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveStyleIndex )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Index);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReportFilter )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ IReportFilter __RPC_FAR *__RPC_FAR *Filters);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReportFilterUse )( 
            IReportProcess __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Index);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReportFilterUse )( 
            IReportProcess __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Index);
        
        END_INTERFACE
    } IReportProcessVtbl;

    interface IReportProcess
    {
        CONST_VTBL struct IReportProcessVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IReportProcess_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IReportProcess_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IReportProcess_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IReportProcess_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IReportProcess_get_StylesCount(This,Count)	\
    (This)->lpVtbl -> get_StylesCount(This,Count)

#define IReportProcess_put_ActiveStyleIndex(This,Index)	\
    (This)->lpVtbl -> put_ActiveStyleIndex(This,Index)

#define IReportProcess_get_ActiveStyleIndex(This,Index)	\
    (This)->lpVtbl -> get_ActiveStyleIndex(This,Index)

#define IReportProcess_get_ReportFilter(This,Filters)	\
    (This)->lpVtbl -> get_ReportFilter(This,Filters)

#define IReportProcess_put_ReportFilterUse(This,Index)	\
    (This)->lpVtbl -> put_ReportFilterUse(This,Index)

#define IReportProcess_get_ReportFilterUse(This,Index)	\
    (This)->lpVtbl -> get_ReportFilterUse(This,Index)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IReportProcess_get_StylesCount_Proxy( 
    IReportProcess __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IReportProcess_get_StylesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IReportProcess_put_ActiveStyleIndex_Proxy( 
    IReportProcess __RPC_FAR * This,
    /* [in] */ VARIANT Index);


void __RPC_STUB IReportProcess_put_ActiveStyleIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IReportProcess_get_ActiveStyleIndex_Proxy( 
    IReportProcess __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Index);


void __RPC_STUB IReportProcess_get_ActiveStyleIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IReportProcess_get_ReportFilter_Proxy( 
    IReportProcess __RPC_FAR * This,
    /* [retval][out] */ IReportFilter __RPC_FAR *__RPC_FAR *Filters);


void __RPC_STUB IReportProcess_get_ReportFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IReportProcess_put_ReportFilterUse_Proxy( 
    IReportProcess __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Index);


void __RPC_STUB IReportProcess_put_ReportFilterUse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IReportProcess_get_ReportFilterUse_Proxy( 
    IReportProcess __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Index);


void __RPC_STUB IReportProcess_get_ReportFilterUse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IReportProcess_INTERFACE_DEFINED__ */


#ifndef __IReportFilter_INTERFACE_DEFINED__
#define __IReportFilter_INTERFACE_DEFINED__

/* interface IReportFilter */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IReportFilter,0x9D111C31,0x1629,0x4a0b,0x89,0xE5,0x84,0x61,0xCD,0xFA,0x21,0x57);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9D111C31-1629-4a0b-89E5-8461CDFA2157")
    IReportFilter : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConditionCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCondition( 
            /* [in] */ long Index,
            /* [out] */ VARIANT __RPC_FAR *UniqId,
            /* [out] */ /* external definition not present */ ksReportFiltersTypeEnum __RPC_FAR *Type,
            /* [out] */ VARIANT __RPC_FAR *Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCondition( 
            /* [in] */ long Index,
            /* [in] */ VARIANT UniqId,
            /* [in] */ /* external definition not present */ ksReportFiltersTypeEnum Type,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveCondition( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IReportFilterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IReportFilter __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IReportFilter __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IReportFilter __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ConditionCount )( 
            IReportFilter __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCondition )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ VARIANT __RPC_FAR *UniqId,
            /* [out] */ /* external definition not present */ ksReportFiltersTypeEnum __RPC_FAR *Type,
            /* [out] */ VARIANT __RPC_FAR *Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCondition )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT UniqId,
            /* [in] */ /* external definition not present */ ksReportFiltersTypeEnum Type,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveCondition )( 
            IReportFilter __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IReportFilter __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IReportFilterVtbl;

    interface IReportFilter
    {
        CONST_VTBL struct IReportFilterVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IReportFilter_get_ConditionCount(This,Count)	\
    (This)->lpVtbl -> get_ConditionCount(This,Count)

#define IReportFilter_GetCondition(This,Index,UniqId,Type,Val,Result)	\
    (This)->lpVtbl -> GetCondition(This,Index,UniqId,Type,Val,Result)

#define IReportFilter_SetCondition(This,Index,UniqId,Type,Val,Result)	\
    (This)->lpVtbl -> SetCondition(This,Index,UniqId,Type,Val,Result)

#define IReportFilter_RemoveCondition(This,Index,Result)	\
    (This)->lpVtbl -> RemoveCondition(This,Index,Result)

#define IReportFilter_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IReportFilter_get_ConditionCount_Proxy( 
    IReportFilter __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IReportFilter_get_ConditionCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IReportFilter_GetCondition_Proxy( 
    IReportFilter __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ VARIANT __RPC_FAR *UniqId,
    /* [out] */ /* external definition not present */ ksReportFiltersTypeEnum __RPC_FAR *Type,
    /* [out] */ VARIANT __RPC_FAR *Val,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IReportFilter_GetCondition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IReportFilter_SetCondition_Proxy( 
    IReportFilter __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT UniqId,
    /* [in] */ /* external definition not present */ ksReportFiltersTypeEnum Type,
    /* [in] */ VARIANT Val,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IReportFilter_SetCondition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IReportFilter_RemoveCondition_Proxy( 
    IReportFilter __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IReportFilter_RemoveCondition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IReportFilter_Clear_Proxy( 
    IReportFilter __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IReportFilter_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IReportFilter_INTERFACE_DEFINED__ */


#ifndef __IProcessParam_INTERFACE_DEFINED__
#define __IProcessParam_INTERFACE_DEFINED__

/* interface IProcessParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProcessParam,0xCB5FDBC8,0x4DAE,0x4c4b,0x87,0xD5,0x6F,0xD1,0xF2,0x70,0x5C,0x38);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CB5FDBC8-4DAE-4c4b-87D5-6FD1F2705C38")
    IProcessParam : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Caption( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Caption( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyTabs( 
            /* [retval][out] */ IPropertyTabs __RPC_FAR *__RPC_FAR *Tabs) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SpecToolbar( 
            /* [in] */ /* external definition not present */ SpecPropertyToolBarEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecToolbar( 
            /* [retval][out] */ /* external definition not present */ SpecPropertyToolBarEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoReduce( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoReduce( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DefaultControlFix( 
            /* [in] */ /* external definition not present */ DefaultFixTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultControlFix( 
            /* [retval][out] */ /* external definition not present */ DefaultFixTypeEnum __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProcessParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProcessParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProcessParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProcessParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Caption )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Caption )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PropertyTabs )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ IPropertyTabs __RPC_FAR *__RPC_FAR *Tabs);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecToolbar )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ SpecPropertyToolBarEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecToolbar )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ SpecPropertyToolBarEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoReduce )( 
            IProcessParam __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoReduce )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefaultControlFix )( 
            IProcessParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DefaultFixTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultControlFix )( 
            IProcessParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DefaultFixTypeEnum __RPC_FAR *PVal);
        
        END_INTERFACE
    } IProcessParamVtbl;

    interface IProcessParam
    {
        CONST_VTBL struct IProcessParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IProcessParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProcessParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProcessParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProcessParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProcessParam_put_Caption(This,PVal)	\
    (This)->lpVtbl -> put_Caption(This,PVal)

#define IProcessParam_get_Caption(This,PVal)	\
    (This)->lpVtbl -> get_Caption(This,PVal)

#define IProcessParam_get_PropertyTabs(This,Tabs)	\
    (This)->lpVtbl -> get_PropertyTabs(This,Tabs)

#define IProcessParam_put_SpecToolbar(This,PVal)	\
    (This)->lpVtbl -> put_SpecToolbar(This,PVal)

#define IProcessParam_get_SpecToolbar(This,PVal)	\
    (This)->lpVtbl -> get_SpecToolbar(This,PVal)

#define IProcessParam_put_AutoReduce(This,NewVal)	\
    (This)->lpVtbl -> put_AutoReduce(This,NewVal)

#define IProcessParam_get_AutoReduce(This,PVal)	\
    (This)->lpVtbl -> get_AutoReduce(This,PVal)

#define IProcessParam_put_DefaultControlFix(This,NewVal)	\
    (This)->lpVtbl -> put_DefaultControlFix(This,NewVal)

#define IProcessParam_get_DefaultControlFix(This,PVal)	\
    (This)->lpVtbl -> get_DefaultControlFix(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessParam_put_Caption_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IProcessParam_put_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessParam_get_Caption_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProcessParam_get_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessParam_get_PropertyTabs_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [retval][out] */ IPropertyTabs __RPC_FAR *__RPC_FAR *Tabs);


void __RPC_STUB IProcessParam_get_PropertyTabs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessParam_put_SpecToolbar_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ SpecPropertyToolBarEnum PVal);


void __RPC_STUB IProcessParam_put_SpecToolbar_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessParam_get_SpecToolbar_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ SpecPropertyToolBarEnum __RPC_FAR *PVal);


void __RPC_STUB IProcessParam_get_SpecToolbar_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessParam_put_AutoReduce_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IProcessParam_put_AutoReduce_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessParam_get_AutoReduce_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProcessParam_get_AutoReduce_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessParam_put_DefaultControlFix_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DefaultFixTypeEnum NewVal);


void __RPC_STUB IProcessParam_put_DefaultControlFix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessParam_get_DefaultControlFix_Proxy( 
    IProcessParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ DefaultFixTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IProcessParam_get_DefaultControlFix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProcessParam_INTERFACE_DEFINED__ */


#ifndef __IPropertyTabs_INTERFACE_DEFINED__
#define __IPropertyTabs_INTERFACE_DEFINED__

/* interface IPropertyTabs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyTabs,0x5BA6324E,0xE555,0x490f,0xA0,0xE2,0x68,0xD3,0xC6,0xC8,0x8D,0x92);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5BA6324E-E555-490f-A0E2-68D3C6C88D92")
    IPropertyTabs : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Caption,
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PTab) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PDoc) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SystemTab( 
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PDoc) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyTabsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyTabs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyTabs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyTabs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ BSTR Caption,
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PTab);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IPropertyTabs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PDoc);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SystemTab )( 
            IPropertyTabs __RPC_FAR * This,
            /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PDoc);
        
        END_INTERFACE
    } IPropertyTabsVtbl;

    interface IPropertyTabs
    {
        CONST_VTBL struct IPropertyTabsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyTabs_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyTabs_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyTabs_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyTabs_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyTabs_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IPropertyTabs_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IPropertyTabs_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IPropertyTabs_Add(This,Caption,PTab)	\
    (This)->lpVtbl -> Add(This,Caption,PTab)

#define IPropertyTabs_Delete(This,Index,PVal)	\
    (This)->lpVtbl -> Delete(This,Index,PVal)

#define IPropertyTabs_get_Active(This,PDoc)	\
    (This)->lpVtbl -> get_Active(This,PDoc)

#define IPropertyTabs_get_SystemTab(This,PDoc)	\
    (This)->lpVtbl -> get_SystemTab(This,PDoc)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTabs_get_Item_Proxy( 
    IPropertyTabs __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPropertyTabs_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyTabs_Add_Proxy( 
    IPropertyTabs __RPC_FAR * This,
    /* [in] */ BSTR Caption,
    /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PTab);


void __RPC_STUB IPropertyTabs_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyTabs_Delete_Proxy( 
    IPropertyTabs __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyTabs_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTabs_get_Active_Proxy( 
    IPropertyTabs __RPC_FAR * This,
    /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PDoc);


void __RPC_STUB IPropertyTabs_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTabs_get_SystemTab_Proxy( 
    IPropertyTabs __RPC_FAR * This,
    /* [retval][out] */ IPropertyTab __RPC_FAR *__RPC_FAR *PDoc);


void __RPC_STUB IPropertyTabs_get_SystemTab_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyTabs_INTERFACE_DEFINED__ */


#ifndef __IPropertyControl_INTERFACE_DEFINED__
#define __IPropertyControl_INTERFACE_DEFINED__

/* interface IPropertyControl */
/* [object][helpcontext][helpstring][hidden][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyControl,0xE35F8FF8,0x03C6,0x460c,0xA2,0xF1,0x29,0x4A,0x3A,0x29,0xA0,0x29);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E35F8FF8-03C6-460c-A2F1-294A3A29A029")
    IPropertyControl : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [defaultvalue][in] */ VARIANT_BOOL PVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ControlType( 
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Id( 
            /* [defaultvalue][in] */ long NewVal = 0) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Enable( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Enable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NameVisibility( 
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NameVisibility( 
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Hint( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Hint( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Tips( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tips( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyControl __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyControl __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyControl __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyControl __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyControl __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyControl __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyControl __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyControl __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyControl __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyControl __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyControl __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyControl __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyControl __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyControl __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyControl __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyControl __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyControlVtbl;

    interface IPropertyControl
    {
        CONST_VTBL struct IPropertyControlVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyControl_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyControl_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyControl_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyControl_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyControl_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyControl_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyControl_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyControl_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyControl_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyControl_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyControl_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyControl_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyControl_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyControl_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyControl_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyControl_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyControl_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyControl_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyControl_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyControl_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyControl_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Visible_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL PVal);


void __RPC_STUB IPropertyControl_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Visible_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Name_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IPropertyControl_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Name_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_ControlType_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_ControlType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Id_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertyControl_put_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Id_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Enable_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyControl_put_Enable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Enable_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Enable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Value_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB IPropertyControl_put_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Value_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_NameVisibility_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);


void __RPC_STUB IPropertyControl_put_NameVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_NameVisibility_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_NameVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Hint_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IPropertyControl_put_Hint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Hint_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Hint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl_put_Tips_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IPropertyControl_put_Tips_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl_get_Tips_Proxy( 
    IPropertyControl __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl_get_Tips_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyControl_INTERFACE_DEFINED__ */


#ifndef __IPropertyControl1_INTERFACE_DEFINED__
#define __IPropertyControl1_INTERFACE_DEFINED__

/* interface IPropertyControl1 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyControl1,0x7D2A79FF,0xEC54,0x4480,0xB9,0xF3,0x46,0xF7,0x52,0x93,0xB5,0x58);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7D2A79FF-EC54-4480-B9F3-46F75293B558")
    IPropertyControl1 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PredefineNumber( 
            /* [defaultvalue][in] */ long NewVal = -1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PredefineNumber( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UserMenu( 
            /* [in] */ /* external definition not present */ OLE_HANDLE NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UserMenu( 
            /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyControl1Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyControl1 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyControl1 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PredefineNumber )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PredefineNumber )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UserMenu )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserMenu )( 
            IPropertyControl1 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyControl1Vtbl;

    interface IPropertyControl1
    {
        CONST_VTBL struct IPropertyControl1Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyControl1_put_PredefineNumber(This,NewVal)	\
    (This)->lpVtbl -> put_PredefineNumber(This,NewVal)

#define IPropertyControl1_get_PredefineNumber(This,PVal)	\
    (This)->lpVtbl -> get_PredefineNumber(This,PVal)

#define IPropertyControl1_put_UserMenu(This,NewVal)	\
    (This)->lpVtbl -> put_UserMenu(This,NewVal)

#define IPropertyControl1_get_UserMenu(This,PVal)	\
    (This)->lpVtbl -> get_UserMenu(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl1_put_PredefineNumber_Proxy( 
    IPropertyControl1 __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertyControl1_put_PredefineNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl1_get_PredefineNumber_Proxy( 
    IPropertyControl1 __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl1_get_PredefineNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyControl1_put_UserMenu_Proxy( 
    IPropertyControl1 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE NewVal);


void __RPC_STUB IPropertyControl1_put_UserMenu_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControl1_get_UserMenu_Proxy( 
    IPropertyControl1 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *PVal);


void __RPC_STUB IPropertyControl1_get_UserMenu_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyControl1_INTERFACE_DEFINED__ */


#ifndef __IPropertyControls_INTERFACE_DEFINED__
#define __IPropertyControls_INTERFACE_DEFINED__

/* interface IPropertyControls */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyControls,0x548241BA,0xFDA8,0x4633,0x98,0x1E,0x94,0x55,0x2B,0xE3,0x8D,0x6B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("548241BA-FDA8-4633-981E-94552BE38D6B")
    IPropertyControls : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPropertyControl __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ ControlTypeEnum Type,
            /* [retval][out] */ IPropertyControl __RPC_FAR *__RPC_FAR *PControl) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyControlsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyControls __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyControls __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyControls __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyControls __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyControls __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyControls __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyControls __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IPropertyControls __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPropertyControls __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPropertyControl __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ControlTypeEnum Type,
            /* [retval][out] */ IPropertyControl __RPC_FAR *__RPC_FAR *PControl);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IPropertyControls __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyControlsVtbl;

    interface IPropertyControls
    {
        CONST_VTBL struct IPropertyControlsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyControls_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyControls_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyControls_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyControls_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyControls_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IPropertyControls_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IPropertyControls_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IPropertyControls_Add(This,Type,PControl)	\
    (This)->lpVtbl -> Add(This,Type,PControl)

#define IPropertyControls_Delete(This,Index,PVal)	\
    (This)->lpVtbl -> Delete(This,Index,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyControls_get_Item_Proxy( 
    IPropertyControls __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPropertyControl __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPropertyControls_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyControls_Add_Proxy( 
    IPropertyControls __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ControlTypeEnum Type,
    /* [retval][out] */ IPropertyControl __RPC_FAR *__RPC_FAR *PControl);


void __RPC_STUB IPropertyControls_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyControls_Delete_Proxy( 
    IPropertyControls __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyControls_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyControls_INTERFACE_DEFINED__ */


#ifndef __IPropertyEdit_INTERFACE_DEFINED__
#define __IPropertyEdit_INTERFACE_DEFINED__

/* interface IPropertyEdit */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyEdit,0x1D238C4C,0xAAD7,0x4374,0xB3,0x72,0x01,0x3C,0xF7,0xFC,0xED,0xB4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1D238C4C-AAD7-4374-B372-013CF7FCEDB4")
    IPropertyEdit : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetValueRange( 
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WithCheck( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WithCheck( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CheckState( 
            /* [in] */ /* external definition not present */ CheckStateEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CheckState( 
            /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [defaultvalue][in] */ long NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyEditVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyEdit __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyEdit __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyEdit __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinValue )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MaxValue )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetValueRange )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WithCheck )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WithCheck )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CheckState )( 
            IPropertyEdit __RPC_FAR * This,
            /* [in] */ /* external definition not present */ CheckStateEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CheckState )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertyEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertyEdit __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyEditVtbl;

    interface IPropertyEdit
    {
        CONST_VTBL struct IPropertyEditVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyEdit_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyEdit_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyEdit_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyEdit_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyEdit_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyEdit_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyEdit_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyEdit_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyEdit_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyEdit_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyEdit_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyEdit_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyEdit_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyEdit_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyEdit_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyEdit_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyEdit_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyEdit_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyEdit_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyEdit_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyEdit_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyEdit_get_MinValue(This,PVal)	\
    (This)->lpVtbl -> get_MinValue(This,PVal)

#define IPropertyEdit_get_MaxValue(This,PVal)	\
    (This)->lpVtbl -> get_MaxValue(This,PVal)

#define IPropertyEdit_SetValueRange(This,MinVal,MaxVal,PVal)	\
    (This)->lpVtbl -> SetValueRange(This,MinVal,MaxVal,PVal)

#define IPropertyEdit_put_WithCheck(This,NewVal)	\
    (This)->lpVtbl -> put_WithCheck(This,NewVal)

#define IPropertyEdit_get_WithCheck(This,PVal)	\
    (This)->lpVtbl -> get_WithCheck(This,PVal)

#define IPropertyEdit_put_CheckState(This,NewVal)	\
    (This)->lpVtbl -> put_CheckState(This,NewVal)

#define IPropertyEdit_get_CheckState(This,PVal)	\
    (This)->lpVtbl -> get_CheckState(This,PVal)

#define IPropertyEdit_put_ReadOnly(This,NewVal)	\
    (This)->lpVtbl -> put_ReadOnly(This,NewVal)

#define IPropertyEdit_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IPropertyEdit_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define IPropertyEdit_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_get_MinValue_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_get_MinValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_get_MaxValue_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_get_MaxValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_SetValueRange_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [in] */ VARIANT MinVal,
    /* [in] */ VARIANT MaxVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_SetValueRange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_put_WithCheck_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyEdit_put_WithCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_get_WithCheck_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_get_WithCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_put_CheckState_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [in] */ /* external definition not present */ CheckStateEnum NewVal);


void __RPC_STUB IPropertyEdit_put_CheckState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_get_CheckState_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_get_CheckState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_put_ReadOnly_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyEdit_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_get_ReadOnly_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_put_Width_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertyEdit_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEdit_get_Width_Proxy( 
    IPropertyEdit __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyEdit_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyEdit_INTERFACE_DEFINED__ */


#ifndef __IPropertySeparator_INTERFACE_DEFINED__
#define __IPropertySeparator_INTERFACE_DEFINED__

/* interface IPropertySeparator */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertySeparator,0x4504EFA0,0xD059,0x4fd4,0xB7,0x25,0xFA,0x26,0x4D,0x19,0x08,0x69);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4504EFA0-D059-4fd4-B725-FA264D190869")
    IPropertySeparator : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SeparatorType( 
            /* [in] */ /* external definition not present */ SeparatorTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SeparatorType( 
            /* [retval][out] */ /* external definition not present */ SeparatorTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetImage( 
            /* [in] */ VARIANT IdBmp,
            /* [in] */ VARIANT HInstance,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertySeparatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertySeparator __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertySeparator __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertySeparator __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertySeparator __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertySeparator __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertySeparator __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertySeparator __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertySeparator __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertySeparator __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SeparatorType )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ /* external definition not present */ SeparatorTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SeparatorType )( 
            IPropertySeparator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ SeparatorTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetImage )( 
            IPropertySeparator __RPC_FAR * This,
            /* [in] */ VARIANT IdBmp,
            /* [in] */ VARIANT HInstance,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertySeparatorVtbl;

    interface IPropertySeparator
    {
        CONST_VTBL struct IPropertySeparatorVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertySeparator_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertySeparator_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertySeparator_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertySeparator_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertySeparator_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertySeparator_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertySeparator_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertySeparator_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertySeparator_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertySeparator_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertySeparator_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertySeparator_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertySeparator_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertySeparator_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertySeparator_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertySeparator_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertySeparator_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertySeparator_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertySeparator_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertySeparator_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertySeparator_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertySeparator_put_SeparatorType(This,NewVal)	\
    (This)->lpVtbl -> put_SeparatorType(This,NewVal)

#define IPropertySeparator_get_SeparatorType(This,PVal)	\
    (This)->lpVtbl -> get_SeparatorType(This,PVal)

#define IPropertySeparator_SetImage(This,IdBmp,HInstance,PVal)	\
    (This)->lpVtbl -> SetImage(This,IdBmp,HInstance,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySeparator_put_SeparatorType_Proxy( 
    IPropertySeparator __RPC_FAR * This,
    /* [in] */ /* external definition not present */ SeparatorTypeEnum NewVal);


void __RPC_STUB IPropertySeparator_put_SeparatorType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySeparator_get_SeparatorType_Proxy( 
    IPropertySeparator __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ SeparatorTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertySeparator_get_SeparatorType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertySeparator_SetImage_Proxy( 
    IPropertySeparator __RPC_FAR * This,
    /* [in] */ VARIANT IdBmp,
    /* [in] */ VARIANT HInstance,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertySeparator_SetImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertySeparator_INTERFACE_DEFINED__ */


#ifndef __IPropertyTab_INTERFACE_DEFINED__
#define __IPropertyTab_INTERFACE_DEFINED__

/* interface IPropertyTab */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyTab,0x45DE8E5B,0xBC2B,0x4584,0x8B,0xA7,0xD3,0x01,0x4D,0x3A,0x23,0x97);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("45DE8E5B-BC2B-4584-8BA7-D3014D3A2397")
    IPropertyTab : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Caption( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Caption( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Active( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyControls( 
            /* [retval][out] */ IPropertyControls __RPC_FAR *__RPC_FAR *PControls) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResModule( 
            /* [in] */ VARIANT HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResModule( 
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Image( 
            /* [in] */ VARIANT Bmp) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Image( 
            /* [retval][out] */ VARIANT __RPC_FAR *Bmp) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyTabVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyTab __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyTab __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyTab __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyTab __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyTab __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyTab __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyTab __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyTab __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Caption )( 
            IPropertyTab __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Caption )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            IPropertyTab __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PropertyControls )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ IPropertyControls __RPC_FAR *__RPC_FAR *PControls);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResModule )( 
            IPropertyTab __RPC_FAR * This,
            /* [in] */ VARIANT HInstance);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResModule )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Image )( 
            IPropertyTab __RPC_FAR * This,
            /* [in] */ VARIANT Bmp);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Image )( 
            IPropertyTab __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Bmp);
        
        END_INTERFACE
    } IPropertyTabVtbl;

    interface IPropertyTab
    {
        CONST_VTBL struct IPropertyTabVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyTab_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyTab_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyTab_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyTab_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyTab_put_Visible(This,NewVal)	\
    (This)->lpVtbl -> put_Visible(This,NewVal)

#define IPropertyTab_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyTab_put_Caption(This,NewText)	\
    (This)->lpVtbl -> put_Caption(This,NewText)

#define IPropertyTab_get_Caption(This,PVal)	\
    (This)->lpVtbl -> get_Caption(This,PVal)

#define IPropertyTab_put_Active(This,NewVal)	\
    (This)->lpVtbl -> put_Active(This,NewVal)

#define IPropertyTab_get_Active(This,PVal)	\
    (This)->lpVtbl -> get_Active(This,PVal)

#define IPropertyTab_get_PropertyControls(This,PControls)	\
    (This)->lpVtbl -> get_PropertyControls(This,PControls)

#define IPropertyTab_put_ResModule(This,HInstance)	\
    (This)->lpVtbl -> put_ResModule(This,HInstance)

#define IPropertyTab_get_ResModule(This,HInstance)	\
    (This)->lpVtbl -> get_ResModule(This,HInstance)

#define IPropertyTab_put_Image(This,Bmp)	\
    (This)->lpVtbl -> put_Image(This,Bmp)

#define IPropertyTab_get_Image(This,Bmp)	\
    (This)->lpVtbl -> get_Image(This,Bmp)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyTab_put_Visible_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyTab_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTab_get_Visible_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyTab_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyTab_put_Caption_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IPropertyTab_put_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTab_get_Caption_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyTab_get_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyTab_put_Active_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyTab_put_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTab_get_Active_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyTab_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTab_get_PropertyControls_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [retval][out] */ IPropertyControls __RPC_FAR *__RPC_FAR *PControls);


void __RPC_STUB IPropertyTab_get_PropertyControls_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyTab_put_ResModule_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [in] */ VARIANT HInstance);


void __RPC_STUB IPropertyTab_put_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTab_get_ResModule_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *HInstance);


void __RPC_STUB IPropertyTab_get_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyTab_put_Image_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [in] */ VARIANT Bmp);


void __RPC_STUB IPropertyTab_put_Image_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyTab_get_Image_Proxy( 
    IPropertyTab __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Bmp);


void __RPC_STUB IPropertyTab_get_Image_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyTab_INTERFACE_DEFINED__ */


#ifndef __IPropertyList_INTERFACE_DEFINED__
#define __IPropertyList_INTERFACE_DEFINED__

/* interface IPropertyList */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyList,0x8F53E9D5,0x07AD,0x412e,0x8C,0x2A,0x50,0x9B,0xC6,0x33,0xC4,0xFF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8F53E9D5-07AD-412e-8C2A-509BC633C4FF")
    IPropertyList : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetValueRange( 
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WithCheck( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WithCheck( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CheckState( 
            /* [in] */ /* external definition not present */ CheckStateEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CheckState( 
            /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [defaultvalue][in] */ long NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearList( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sort( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sort( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Find( 
            /* [in] */ VARIANT Val,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCurrentByIndex( 
            /* [in] */ long Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Precision( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Precision( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *count) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyListVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyList __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyList __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyList __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinValue )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MaxValue )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetValueRange )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WithCheck )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WithCheck )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CheckState )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ /* external definition not present */ CheckStateEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CheckState )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearList )( 
            IPropertyList __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sort )( 
            IPropertyList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sort )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Find )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCurrentByIndex )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ long Val,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Precision )( 
            IPropertyList __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Precision )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPropertyList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *count);
        
        END_INTERFACE
    } IPropertyListVtbl;

    interface IPropertyList
    {
        CONST_VTBL struct IPropertyListVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyList_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyList_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyList_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyList_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyList_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyList_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyList_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyList_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyList_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyList_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyList_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyList_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyList_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyList_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyList_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyList_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyList_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyList_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyList_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyList_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyList_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyList_get_MinValue(This,PVal)	\
    (This)->lpVtbl -> get_MinValue(This,PVal)

#define IPropertyList_get_MaxValue(This,PVal)	\
    (This)->lpVtbl -> get_MaxValue(This,PVal)

#define IPropertyList_SetValueRange(This,MinVal,MaxVal,PVal)	\
    (This)->lpVtbl -> SetValueRange(This,MinVal,MaxVal,PVal)

#define IPropertyList_put_WithCheck(This,NewVal)	\
    (This)->lpVtbl -> put_WithCheck(This,NewVal)

#define IPropertyList_get_WithCheck(This,PVal)	\
    (This)->lpVtbl -> get_WithCheck(This,PVal)

#define IPropertyList_put_CheckState(This,NewVal)	\
    (This)->lpVtbl -> put_CheckState(This,NewVal)

#define IPropertyList_get_CheckState(This,PVal)	\
    (This)->lpVtbl -> get_CheckState(This,PVal)

#define IPropertyList_put_ReadOnly(This,NewVal)	\
    (This)->lpVtbl -> put_ReadOnly(This,NewVal)

#define IPropertyList_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IPropertyList_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define IPropertyList_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#define IPropertyList_ClearList(This)	\
    (This)->lpVtbl -> ClearList(This)

#define IPropertyList_Add(This,NewVal)	\
    (This)->lpVtbl -> Add(This,NewVal)

#define IPropertyList_put_Sort(This,NewVal)	\
    (This)->lpVtbl -> put_Sort(This,NewVal)

#define IPropertyList_get_Sort(This,PVal)	\
    (This)->lpVtbl -> get_Sort(This,PVal)

#define IPropertyList_Find(This,Val,PVal)	\
    (This)->lpVtbl -> Find(This,Val,PVal)

#define IPropertyList_SetCurrentByIndex(This,Val,PVal)	\
    (This)->lpVtbl -> SetCurrentByIndex(This,Val,PVal)

#define IPropertyList_put_Precision(This,NewVal)	\
    (This)->lpVtbl -> put_Precision(This,NewVal)

#define IPropertyList_get_Precision(This,PVal)	\
    (This)->lpVtbl -> get_Precision(This,PVal)

#define IPropertyList_get_Count(This,count)	\
    (This)->lpVtbl -> get_Count(This,count)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_MinValue_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_MinValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_MaxValue_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_MaxValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyList_SetValueRange_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [in] */ VARIANT MinVal,
    /* [in] */ VARIANT MaxVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_SetValueRange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyList_put_WithCheck_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyList_put_WithCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_WithCheck_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_WithCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyList_put_CheckState_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [in] */ /* external definition not present */ CheckStateEnum NewVal);


void __RPC_STUB IPropertyList_put_CheckState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_CheckState_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_CheckState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyList_put_ReadOnly_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyList_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_ReadOnly_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyList_put_Width_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertyList_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_Width_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyList_ClearList_Proxy( 
    IPropertyList __RPC_FAR * This);


void __RPC_STUB IPropertyList_ClearList_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyList_Add_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB IPropertyList_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyList_put_Sort_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyList_put_Sort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_Sort_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_Sort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyList_Find_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [in] */ VARIANT Val,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_Find_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyList_SetCurrentByIndex_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [in] */ long Val,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_SetCurrentByIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyList_put_Precision_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPropertyList_put_Precision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_Precision_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPropertyList_get_Precision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyList_get_Count_Proxy( 
    IPropertyList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *count);


void __RPC_STUB IPropertyList_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyList_INTERFACE_DEFINED__ */


#ifndef __IPropertyCheckBox_INTERFACE_DEFINED__
#define __IPropertyCheckBox_INTERFACE_DEFINED__

/* interface IPropertyCheckBox */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyCheckBox,0x9205277D,0xB480,0x4af7,0xB6,0x60,0xCC,0xDC,0x65,0x3F,0x64,0x53);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9205277D-B480-4af7-B660-CCDC653F6453")
    IPropertyCheckBox : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCustomBitmaps( 
            /* [in] */ VARIANT IdUnchecked,
            /* [in] */ VARIANT IdChecked,
            /* [in] */ VARIANT IdIndeterminate,
            /* [in] */ VARIANT HInstance) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyCheckBoxVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyCheckBox __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyCheckBox __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCustomBitmaps )( 
            IPropertyCheckBox __RPC_FAR * This,
            /* [in] */ VARIANT IdUnchecked,
            /* [in] */ VARIANT IdChecked,
            /* [in] */ VARIANT IdIndeterminate,
            /* [in] */ VARIANT HInstance);
        
        END_INTERFACE
    } IPropertyCheckBoxVtbl;

    interface IPropertyCheckBox
    {
        CONST_VTBL struct IPropertyCheckBoxVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyCheckBox_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyCheckBox_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyCheckBox_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyCheckBox_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyCheckBox_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyCheckBox_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyCheckBox_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyCheckBox_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyCheckBox_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyCheckBox_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyCheckBox_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyCheckBox_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyCheckBox_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyCheckBox_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyCheckBox_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyCheckBox_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyCheckBox_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyCheckBox_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyCheckBox_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyCheckBox_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyCheckBox_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyCheckBox_SetCustomBitmaps(This,IdUnchecked,IdChecked,IdIndeterminate,HInstance)	\
    (This)->lpVtbl -> SetCustomBitmaps(This,IdUnchecked,IdChecked,IdIndeterminate,HInstance)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyCheckBox_SetCustomBitmaps_Proxy( 
    IPropertyCheckBox __RPC_FAR * This,
    /* [in] */ VARIANT IdUnchecked,
    /* [in] */ VARIANT IdChecked,
    /* [in] */ VARIANT IdIndeterminate,
    /* [in] */ VARIANT HInstance);


void __RPC_STUB IPropertyCheckBox_SetCustomBitmaps_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyCheckBox_INTERFACE_DEFINED__ */


#ifndef __IPropertyMultiButton_INTERFACE_DEFINED__
#define __IPropertyMultiButton_INTERFACE_DEFINED__

/* interface IPropertyMultiButton */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyMultiButton,0x3920A0BE,0x0628,0x47d5,0xB0,0xF1,0x1D,0xFE,0xB7,0x79,0x64,0xBC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3920A0BE-0628-47d5-B0F1-1DFEB77964BC")
    IPropertyMultiButton : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonsType( 
            /* [in] */ /* external definition not present */ ButtonTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonsType( 
            /* [retval][out] */ /* external definition not present */ ButtonTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonChecked( 
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonChecked( 
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonEnable( 
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonEnable( 
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddButton( 
            /* [in] */ long BtnID,
            /* [in] */ VARIANT Bmp,
            /* [defaultvalue][in] */ long InsertAt = -1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResModule( 
            /* [in] */ VARIANT HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResModule( 
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonTips( 
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonTips( 
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonHint( 
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonHint( 
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NextCommand( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NextCommand( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyMultiButtonVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyMultiButton __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyMultiButton __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonsType )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ButtonTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonsType )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ButtonTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonChecked )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonChecked )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonEnable )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonEnable )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddButton )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ VARIANT Bmp,
            /* [defaultvalue][in] */ long InsertAt);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResModule )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ VARIANT HInstance);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResModule )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonTips )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonTips )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonHint )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonHint )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NextCommand )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NextCommand )( 
            IPropertyMultiButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyMultiButtonVtbl;

    interface IPropertyMultiButton
    {
        CONST_VTBL struct IPropertyMultiButtonVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyMultiButton_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyMultiButton_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyMultiButton_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyMultiButton_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyMultiButton_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyMultiButton_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyMultiButton_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyMultiButton_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyMultiButton_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyMultiButton_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyMultiButton_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyMultiButton_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyMultiButton_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyMultiButton_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyMultiButton_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyMultiButton_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyMultiButton_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyMultiButton_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyMultiButton_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyMultiButton_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyMultiButton_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyMultiButton_put_ButtonsType(This,NewVal)	\
    (This)->lpVtbl -> put_ButtonsType(This,NewVal)

#define IPropertyMultiButton_get_ButtonsType(This,PVal)	\
    (This)->lpVtbl -> get_ButtonsType(This,PVal)

#define IPropertyMultiButton_put_ButtonChecked(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonChecked(This,BtnID,NewVal)

#define IPropertyMultiButton_get_ButtonChecked(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonChecked(This,BtnID,PVal)

#define IPropertyMultiButton_put_ButtonEnable(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonEnable(This,BtnID,NewVal)

#define IPropertyMultiButton_get_ButtonEnable(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonEnable(This,BtnID,PVal)

#define IPropertyMultiButton_AddButton(This,BtnID,Bmp,InsertAt)	\
    (This)->lpVtbl -> AddButton(This,BtnID,Bmp,InsertAt)

#define IPropertyMultiButton_put_ResModule(This,HInstance)	\
    (This)->lpVtbl -> put_ResModule(This,HInstance)

#define IPropertyMultiButton_get_ResModule(This,HInstance)	\
    (This)->lpVtbl -> get_ResModule(This,HInstance)

#define IPropertyMultiButton_put_ButtonTips(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonTips(This,BtnID,NewVal)

#define IPropertyMultiButton_get_ButtonTips(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonTips(This,BtnID,PVal)

#define IPropertyMultiButton_put_ButtonHint(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonHint(This,BtnID,NewVal)

#define IPropertyMultiButton_get_ButtonHint(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonHint(This,BtnID,PVal)

#define IPropertyMultiButton_put_NextCommand(This,NewVal)	\
    (This)->lpVtbl -> put_NextCommand(This,NewVal)

#define IPropertyMultiButton_get_NextCommand(This,PVal)	\
    (This)->lpVtbl -> get_NextCommand(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_ButtonsType_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ButtonTypeEnum NewVal);


void __RPC_STUB IPropertyMultiButton_put_ButtonsType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_ButtonsType_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ButtonTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertyMultiButton_get_ButtonsType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_ButtonChecked_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyMultiButton_put_ButtonChecked_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_ButtonChecked_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyMultiButton_get_ButtonChecked_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_ButtonEnable_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyMultiButton_put_ButtonEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_ButtonEnable_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyMultiButton_get_ButtonEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_AddButton_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ VARIANT Bmp,
    /* [defaultvalue][in] */ long InsertAt);


void __RPC_STUB IPropertyMultiButton_AddButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_ResModule_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ VARIANT HInstance);


void __RPC_STUB IPropertyMultiButton_put_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_ResModule_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *HInstance);


void __RPC_STUB IPropertyMultiButton_get_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_ButtonTips_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IPropertyMultiButton_put_ButtonTips_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_ButtonTips_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyMultiButton_get_ButtonTips_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_ButtonHint_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IPropertyMultiButton_put_ButtonHint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_ButtonHint_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyMultiButton_get_ButtonHint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_put_NextCommand_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyMultiButton_put_NextCommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyMultiButton_get_NextCommand_Proxy( 
    IPropertyMultiButton __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyMultiButton_get_NextCommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyMultiButton_INTERFACE_DEFINED__ */


#ifndef __IPropertySlideBox_INTERFACE_DEFINED__
#define __IPropertySlideBox_INTERFACE_DEFINED__

/* interface IPropertySlideBox */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertySlideBox,0xE1DB38CD,0xA6D5,0x44b8,0x9A,0xD0,0x00,0x56,0xB8,0x79,0x24,0xDD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E1DB38CD-A6D5-44b8-9AD0-0056B87924DD")
    IPropertySlideBox : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResModule( 
            /* [in] */ VARIANT HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResModule( 
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SlideType( 
            /* [in] */ /* external definition not present */ SlideTypeEnum Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SlideType( 
            /* [retval][out] */ /* external definition not present */ SlideTypeEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawingSlide( 
            /* [in] */ VARIANT Slide) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingSlide( 
            /* [retval][out] */ VARIANT __RPC_FAR *Slide) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ long Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ long Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ long __RPC_FAR *Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CheckBoxVisibility( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CheckBoxVisibility( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateParam( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertySlideBoxVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertySlideBox __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertySlideBox __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResModule )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ VARIANT HInstance);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResModule )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SlideType )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ /* external definition not present */ SlideTypeEnum Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SlideType )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ SlideTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingSlide )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ VARIANT Slide);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingSlide )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Slide);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ long Width);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Width);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ long Height);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Height);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CheckBoxVisibility )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CheckBoxVisibility )( 
            IPropertySlideBox __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UpdateParam )( 
            IPropertySlideBox __RPC_FAR * This);
        
        END_INTERFACE
    } IPropertySlideBoxVtbl;

    interface IPropertySlideBox
    {
        CONST_VTBL struct IPropertySlideBoxVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertySlideBox_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertySlideBox_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertySlideBox_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertySlideBox_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertySlideBox_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertySlideBox_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertySlideBox_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertySlideBox_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertySlideBox_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertySlideBox_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertySlideBox_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertySlideBox_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertySlideBox_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertySlideBox_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertySlideBox_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertySlideBox_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertySlideBox_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertySlideBox_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertySlideBox_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertySlideBox_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertySlideBox_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertySlideBox_put_ResModule(This,HInstance)	\
    (This)->lpVtbl -> put_ResModule(This,HInstance)

#define IPropertySlideBox_get_ResModule(This,HInstance)	\
    (This)->lpVtbl -> get_ResModule(This,HInstance)

#define IPropertySlideBox_put_SlideType(This,Type)	\
    (This)->lpVtbl -> put_SlideType(This,Type)

#define IPropertySlideBox_get_SlideType(This,Type)	\
    (This)->lpVtbl -> get_SlideType(This,Type)

#define IPropertySlideBox_put_DrawingSlide(This,Slide)	\
    (This)->lpVtbl -> put_DrawingSlide(This,Slide)

#define IPropertySlideBox_get_DrawingSlide(This,Slide)	\
    (This)->lpVtbl -> get_DrawingSlide(This,Slide)

#define IPropertySlideBox_put_Width(This,Width)	\
    (This)->lpVtbl -> put_Width(This,Width)

#define IPropertySlideBox_get_Width(This,Width)	\
    (This)->lpVtbl -> get_Width(This,Width)

#define IPropertySlideBox_put_Height(This,Height)	\
    (This)->lpVtbl -> put_Height(This,Height)

#define IPropertySlideBox_get_Height(This,Height)	\
    (This)->lpVtbl -> get_Height(This,Height)

#define IPropertySlideBox_put_CheckBoxVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_CheckBoxVisibility(This,NewVal)

#define IPropertySlideBox_get_CheckBoxVisibility(This,PVal)	\
    (This)->lpVtbl -> get_CheckBoxVisibility(This,PVal)

#define IPropertySlideBox_UpdateParam(This)	\
    (This)->lpVtbl -> UpdateParam(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_put_ResModule_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [in] */ VARIANT HInstance);


void __RPC_STUB IPropertySlideBox_put_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_get_ResModule_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *HInstance);


void __RPC_STUB IPropertySlideBox_get_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_put_SlideType_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [in] */ /* external definition not present */ SlideTypeEnum Type);


void __RPC_STUB IPropertySlideBox_put_SlideType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_get_SlideType_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ SlideTypeEnum __RPC_FAR *Type);


void __RPC_STUB IPropertySlideBox_get_SlideType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_put_DrawingSlide_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [in] */ VARIANT Slide);


void __RPC_STUB IPropertySlideBox_put_DrawingSlide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_get_DrawingSlide_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Slide);


void __RPC_STUB IPropertySlideBox_get_DrawingSlide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_put_Width_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [in] */ long Width);


void __RPC_STUB IPropertySlideBox_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_get_Width_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Width);


void __RPC_STUB IPropertySlideBox_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_put_Height_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [in] */ long Height);


void __RPC_STUB IPropertySlideBox_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_get_Height_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Height);


void __RPC_STUB IPropertySlideBox_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_put_CheckBoxVisibility_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertySlideBox_put_CheckBoxVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_get_CheckBoxVisibility_Proxy( 
    IPropertySlideBox __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertySlideBox_get_CheckBoxVisibility_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertySlideBox_UpdateParam_Proxy( 
    IPropertySlideBox __RPC_FAR * This);


void __RPC_STUB IPropertySlideBox_UpdateParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertySlideBox_INTERFACE_DEFINED__ */


#ifndef __IPropertyUserControl_INTERFACE_DEFINED__
#define __IPropertyUserControl_INTERFACE_DEFINED__

/* interface IPropertyUserControl */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyUserControl,0x5A902C6C,0xA030,0x4f37,0xA0,0x89,0x91,0x50,0x5B,0xAE,0xE4,0x66);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5A902C6C-A030-4f37-A089-91505BAEE466")
    IPropertyUserControl : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ long Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ long Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ long __RPC_FAR *Height) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetOCXControl( 
            /* [in] */ BSTR ProgID) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyUserControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyUserControl __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyUserControl __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ long Width);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Width);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ long Height);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Height);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetOCXControl )( 
            IPropertyUserControl __RPC_FAR * This,
            /* [in] */ BSTR ProgID);
        
        END_INTERFACE
    } IPropertyUserControlVtbl;

    interface IPropertyUserControl
    {
        CONST_VTBL struct IPropertyUserControlVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyUserControl_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyUserControl_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyUserControl_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyUserControl_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyUserControl_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyUserControl_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyUserControl_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyUserControl_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyUserControl_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyUserControl_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyUserControl_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyUserControl_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyUserControl_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyUserControl_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyUserControl_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyUserControl_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyUserControl_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyUserControl_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyUserControl_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyUserControl_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyUserControl_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyUserControl_put_Width(This,Width)	\
    (This)->lpVtbl -> put_Width(This,Width)

#define IPropertyUserControl_get_Width(This,Width)	\
    (This)->lpVtbl -> get_Width(This,Width)

#define IPropertyUserControl_put_Height(This,Height)	\
    (This)->lpVtbl -> put_Height(This,Height)

#define IPropertyUserControl_get_Height(This,Height)	\
    (This)->lpVtbl -> get_Height(This,Height)

#define IPropertyUserControl_SetOCXControl(This,ProgID)	\
    (This)->lpVtbl -> SetOCXControl(This,ProgID)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyUserControl_put_Width_Proxy( 
    IPropertyUserControl __RPC_FAR * This,
    /* [in] */ long Width);


void __RPC_STUB IPropertyUserControl_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyUserControl_get_Width_Proxy( 
    IPropertyUserControl __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Width);


void __RPC_STUB IPropertyUserControl_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyUserControl_put_Height_Proxy( 
    IPropertyUserControl __RPC_FAR * This,
    /* [in] */ long Height);


void __RPC_STUB IPropertyUserControl_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyUserControl_get_Height_Proxy( 
    IPropertyUserControl __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Height);


void __RPC_STUB IPropertyUserControl_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyUserControl_SetOCXControl_Proxy( 
    IPropertyUserControl __RPC_FAR * This,
    /* [in] */ BSTR ProgID);


void __RPC_STUB IPropertyUserControl_SetOCXControl_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyUserControl_INTERFACE_DEFINED__ */


#ifndef __IPropertyGrid_INTERFACE_DEFINED__
#define __IPropertyGrid_INTERFACE_DEFINED__

/* interface IPropertyGrid */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyGrid,0x6682B70F,0x59DB,0x4bf0,0xAB,0x01,0x45,0xB6,0x5B,0x1B,0xDE,0xD1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6682B70F-59DB-4bf0-AB01-45B65B1BDED1")
    IPropertyGrid : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColumnCount( 
            /* [in] */ long Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RowCount( 
            /* [in] */ long Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FixedColumnCount( 
            /* [in] */ long Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FixedColumnCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FixedRowCount( 
            /* [in] */ long Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FixedRowCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColumnWidth( 
            /* [in] */ long Index,
            /* [in] */ long Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnWidth( 
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RowHeight( 
            /* [in] */ long Index,
            /* [in] */ long Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowHeight( 
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableEdit( 
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableEdit( 
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CellText( 
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [in] */ BSTR Text) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CellText( 
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [retval][out] */ BSTR __RPC_FAR *Text) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CellFormat( 
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [in] */ long Format) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CellFormat( 
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [retval][out] */ long __RPC_FAR *Format) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ long Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *Width) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ long Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ long __RPC_FAR *Height) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSizeColumns( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSizeColumns( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateParam( void) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentColumn( 
            /* [in] */ long Column) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentColumn( 
            /* [retval][out] */ long __RPC_FAR *Column) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentRow( 
            /* [in] */ long Row) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentRow( 
            /* [retval][out] */ long __RPC_FAR *Row) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyGridVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyGrid __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyGrid __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ColumnCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RowCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FixedColumnCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FixedColumnCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FixedRowCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FixedRowCount )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ColumnWidth )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ long Width);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnWidth )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Width);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RowHeight )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ long Height);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowHeight )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Height);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EnableEdit )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EnableEdit )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CellText )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [in] */ BSTR Text);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CellText )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [retval][out] */ BSTR __RPC_FAR *Text);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CellFormat )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [in] */ long Format);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CellFormat )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long NRow,
            /* [in] */ long NCol,
            /* [retval][out] */ long __RPC_FAR *Format);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Width);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Width);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Height);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Height);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSizeColumns )( 
            IPropertyGrid __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSizeColumns )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UpdateParam )( 
            IPropertyGrid __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CurrentColumn )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Column);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentColumn )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Column);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CurrentRow )( 
            IPropertyGrid __RPC_FAR * This,
            /* [in] */ long Row);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentRow )( 
            IPropertyGrid __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Row);
        
        END_INTERFACE
    } IPropertyGridVtbl;

    interface IPropertyGrid
    {
        CONST_VTBL struct IPropertyGridVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyGrid_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyGrid_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyGrid_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyGrid_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyGrid_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyGrid_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyGrid_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyGrid_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyGrid_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyGrid_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyGrid_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyGrid_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyGrid_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyGrid_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyGrid_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyGrid_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyGrid_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyGrid_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyGrid_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyGrid_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyGrid_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyGrid_put_ColumnCount(This,Count)	\
    (This)->lpVtbl -> put_ColumnCount(This,Count)

#define IPropertyGrid_get_ColumnCount(This,Count)	\
    (This)->lpVtbl -> get_ColumnCount(This,Count)

#define IPropertyGrid_put_RowCount(This,Count)	\
    (This)->lpVtbl -> put_RowCount(This,Count)

#define IPropertyGrid_get_RowCount(This,Count)	\
    (This)->lpVtbl -> get_RowCount(This,Count)

#define IPropertyGrid_put_FixedColumnCount(This,Count)	\
    (This)->lpVtbl -> put_FixedColumnCount(This,Count)

#define IPropertyGrid_get_FixedColumnCount(This,Count)	\
    (This)->lpVtbl -> get_FixedColumnCount(This,Count)

#define IPropertyGrid_put_FixedRowCount(This,Count)	\
    (This)->lpVtbl -> put_FixedRowCount(This,Count)

#define IPropertyGrid_get_FixedRowCount(This,Count)	\
    (This)->lpVtbl -> get_FixedRowCount(This,Count)

#define IPropertyGrid_put_ColumnWidth(This,Index,Width)	\
    (This)->lpVtbl -> put_ColumnWidth(This,Index,Width)

#define IPropertyGrid_get_ColumnWidth(This,Index,Width)	\
    (This)->lpVtbl -> get_ColumnWidth(This,Index,Width)

#define IPropertyGrid_put_RowHeight(This,Index,Height)	\
    (This)->lpVtbl -> put_RowHeight(This,Index,Height)

#define IPropertyGrid_get_RowHeight(This,Index,Height)	\
    (This)->lpVtbl -> get_RowHeight(This,Index,Height)

#define IPropertyGrid_put_EnableEdit(This,NRow,NCol,Val)	\
    (This)->lpVtbl -> put_EnableEdit(This,NRow,NCol,Val)

#define IPropertyGrid_get_EnableEdit(This,NRow,NCol,PVal)	\
    (This)->lpVtbl -> get_EnableEdit(This,NRow,NCol,PVal)

#define IPropertyGrid_put_CellText(This,NRow,NCol,Text)	\
    (This)->lpVtbl -> put_CellText(This,NRow,NCol,Text)

#define IPropertyGrid_get_CellText(This,NRow,NCol,Text)	\
    (This)->lpVtbl -> get_CellText(This,NRow,NCol,Text)

#define IPropertyGrid_put_CellFormat(This,NRow,NCol,Format)	\
    (This)->lpVtbl -> put_CellFormat(This,NRow,NCol,Format)

#define IPropertyGrid_get_CellFormat(This,NRow,NCol,Format)	\
    (This)->lpVtbl -> get_CellFormat(This,NRow,NCol,Format)

#define IPropertyGrid_put_Width(This,Width)	\
    (This)->lpVtbl -> put_Width(This,Width)

#define IPropertyGrid_get_Width(This,Width)	\
    (This)->lpVtbl -> get_Width(This,Width)

#define IPropertyGrid_put_Height(This,Height)	\
    (This)->lpVtbl -> put_Height(This,Height)

#define IPropertyGrid_get_Height(This,Height)	\
    (This)->lpVtbl -> get_Height(This,Height)

#define IPropertyGrid_put_ReadOnly(This,NewVal)	\
    (This)->lpVtbl -> put_ReadOnly(This,NewVal)

#define IPropertyGrid_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IPropertyGrid_put_AutoSizeColumns(This,NewVal)	\
    (This)->lpVtbl -> put_AutoSizeColumns(This,NewVal)

#define IPropertyGrid_get_AutoSizeColumns(This,PVal)	\
    (This)->lpVtbl -> get_AutoSizeColumns(This,PVal)

#define IPropertyGrid_UpdateParam(This)	\
    (This)->lpVtbl -> UpdateParam(This)

#define IPropertyGrid_put_CurrentColumn(This,Column)	\
    (This)->lpVtbl -> put_CurrentColumn(This,Column)

#define IPropertyGrid_get_CurrentColumn(This,Column)	\
    (This)->lpVtbl -> get_CurrentColumn(This,Column)

#define IPropertyGrid_put_CurrentRow(This,Row)	\
    (This)->lpVtbl -> put_CurrentRow(This,Row)

#define IPropertyGrid_get_CurrentRow(This,Row)	\
    (This)->lpVtbl -> get_CurrentRow(This,Row)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_ColumnCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Count);


void __RPC_STUB IPropertyGrid_put_ColumnCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_ColumnCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPropertyGrid_get_ColumnCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_RowCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Count);


void __RPC_STUB IPropertyGrid_put_RowCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_RowCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPropertyGrid_get_RowCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_FixedColumnCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Count);


void __RPC_STUB IPropertyGrid_put_FixedColumnCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_FixedColumnCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPropertyGrid_get_FixedColumnCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_FixedRowCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Count);


void __RPC_STUB IPropertyGrid_put_FixedRowCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_FixedRowCount_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPropertyGrid_get_FixedRowCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_ColumnWidth_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ long Width);


void __RPC_STUB IPropertyGrid_put_ColumnWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_ColumnWidth_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ long __RPC_FAR *Width);


void __RPC_STUB IPropertyGrid_get_ColumnWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_RowHeight_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ long Height);


void __RPC_STUB IPropertyGrid_put_RowHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_RowHeight_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ long __RPC_FAR *Height);


void __RPC_STUB IPropertyGrid_get_RowHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_EnableEdit_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long NRow,
    /* [in] */ long NCol,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyGrid_put_EnableEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_EnableEdit_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long NRow,
    /* [in] */ long NCol,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyGrid_get_EnableEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_CellText_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long NRow,
    /* [in] */ long NCol,
    /* [in] */ BSTR Text);


void __RPC_STUB IPropertyGrid_put_CellText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_CellText_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long NRow,
    /* [in] */ long NCol,
    /* [retval][out] */ BSTR __RPC_FAR *Text);


void __RPC_STUB IPropertyGrid_get_CellText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_CellFormat_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long NRow,
    /* [in] */ long NCol,
    /* [in] */ long Format);


void __RPC_STUB IPropertyGrid_put_CellFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_CellFormat_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long NRow,
    /* [in] */ long NCol,
    /* [retval][out] */ long __RPC_FAR *Format);


void __RPC_STUB IPropertyGrid_get_CellFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_Width_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Width);


void __RPC_STUB IPropertyGrid_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_Width_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Width);


void __RPC_STUB IPropertyGrid_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_Height_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Height);


void __RPC_STUB IPropertyGrid_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_Height_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Height);


void __RPC_STUB IPropertyGrid_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_ReadOnly_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyGrid_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_ReadOnly_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyGrid_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_AutoSizeColumns_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyGrid_put_AutoSizeColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_AutoSizeColumns_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyGrid_get_AutoSizeColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_UpdateParam_Proxy( 
    IPropertyGrid __RPC_FAR * This);


void __RPC_STUB IPropertyGrid_UpdateParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_CurrentColumn_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Column);


void __RPC_STUB IPropertyGrid_put_CurrentColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_CurrentColumn_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Column);


void __RPC_STUB IPropertyGrid_get_CurrentColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_put_CurrentRow_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [in] */ long Row);


void __RPC_STUB IPropertyGrid_put_CurrentRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyGrid_get_CurrentRow_Proxy( 
    IPropertyGrid __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Row);


void __RPC_STUB IPropertyGrid_get_CurrentRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyGrid_INTERFACE_DEFINED__ */


#ifndef __IPropertyManager_INTERFACE_DEFINED__
#define __IPropertyManager_INTERFACE_DEFINED__

/* interface IPropertyManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyManager,0x34196EC3,0x58B2,0x436c,0xA3,0x53,0x42,0x77,0x03,0x74,0x08,0x74);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("34196EC3-58B2-436c-A353-427703740874")
    IPropertyManager : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Caption( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Caption( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Layout( 
            /* [in] */ /* external definition not present */ PropertyManagerLayout NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layout( 
            /* [retval][out] */ /* external definition not present */ PropertyManagerLayout __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PropertyTabs( 
            /* [retval][out] */ IPropertyTabs __RPC_FAR *__RPC_FAR *Tabs) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGabaritRect( 
            /* [in] */ long Left,
            /* [in] */ long Top,
            /* [in] */ long Right,
            /* [in] */ long Bottom) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGabaritRect( 
            /* [out] */ long __RPC_FAR *Left,
            /* [out] */ long __RPC_FAR *Top,
            /* [out] */ long __RPC_FAR *Right,
            /* [out] */ long __RPC_FAR *Bottom) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ShowTabs( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateTabs( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE HideTabs( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SpecToolbar( 
            /* [in] */ /* external definition not present */ SpecPropertyToolBarEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecToolbar( 
            /* [retval][out] */ /* external definition not present */ SpecPropertyToolBarEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RepeatCommand( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoHideMode( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoHideMode( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyManager __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Caption )( 
            IPropertyManager __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Caption )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Layout )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyManagerLayout NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Layout )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyManagerLayout __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PropertyTabs )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ IPropertyTabs __RPC_FAR *__RPC_FAR *Tabs);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGabaritRect )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ long Left,
            /* [in] */ long Top,
            /* [in] */ long Right,
            /* [in] */ long Bottom);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGabaritRect )( 
            IPropertyManager __RPC_FAR * This,
            /* [out] */ long __RPC_FAR *Left,
            /* [out] */ long __RPC_FAR *Top,
            /* [out] */ long __RPC_FAR *Right,
            /* [out] */ long __RPC_FAR *Bottom);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ShowTabs )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *UpdateTabs )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *HideTabs )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecToolbar )( 
            IPropertyManager __RPC_FAR * This,
            /* [in] */ /* external definition not present */ SpecPropertyToolBarEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecToolbar )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ SpecPropertyToolBarEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RepeatCommand )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoHideMode )( 
            IPropertyManager __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoHideMode )( 
            IPropertyManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyManagerVtbl;

    interface IPropertyManager
    {
        CONST_VTBL struct IPropertyManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyManager_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyManager_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyManager_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyManager_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyManager_put_Visible(This,NewVal)	\
    (This)->lpVtbl -> put_Visible(This,NewVal)

#define IPropertyManager_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyManager_put_Caption(This,NewText)	\
    (This)->lpVtbl -> put_Caption(This,NewText)

#define IPropertyManager_get_Caption(This,PVal)	\
    (This)->lpVtbl -> get_Caption(This,PVal)

#define IPropertyManager_put_Layout(This,NewVal)	\
    (This)->lpVtbl -> put_Layout(This,NewVal)

#define IPropertyManager_get_Layout(This,PVal)	\
    (This)->lpVtbl -> get_Layout(This,PVal)

#define IPropertyManager_get_PropertyTabs(This,Tabs)	\
    (This)->lpVtbl -> get_PropertyTabs(This,Tabs)

#define IPropertyManager_SetGabaritRect(This,Left,Top,Right,Bottom)	\
    (This)->lpVtbl -> SetGabaritRect(This,Left,Top,Right,Bottom)

#define IPropertyManager_GetGabaritRect(This,Left,Top,Right,Bottom)	\
    (This)->lpVtbl -> GetGabaritRect(This,Left,Top,Right,Bottom)

#define IPropertyManager_ShowTabs(This,PVal)	\
    (This)->lpVtbl -> ShowTabs(This,PVal)

#define IPropertyManager_UpdateTabs(This,PVal)	\
    (This)->lpVtbl -> UpdateTabs(This,PVal)

#define IPropertyManager_HideTabs(This,PVal)	\
    (This)->lpVtbl -> HideTabs(This,PVal)

#define IPropertyManager_put_SpecToolbar(This,PVal)	\
    (This)->lpVtbl -> put_SpecToolbar(This,PVal)

#define IPropertyManager_get_SpecToolbar(This,PVal)	\
    (This)->lpVtbl -> get_SpecToolbar(This,PVal)

#define IPropertyManager_RepeatCommand(This,PVal)	\
    (This)->lpVtbl -> RepeatCommand(This,PVal)

#define IPropertyManager_put_AutoHideMode(This,NewVal)	\
    (This)->lpVtbl -> put_AutoHideMode(This,NewVal)

#define IPropertyManager_get_AutoHideMode(This,PVal)	\
    (This)->lpVtbl -> get_AutoHideMode(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyManager_put_Visible_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyManager_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyManager_get_Visible_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyManager_put_Caption_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IPropertyManager_put_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyManager_get_Caption_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_get_Caption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyManager_put_Layout_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [in] */ /* external definition not present */ PropertyManagerLayout NewVal);


void __RPC_STUB IPropertyManager_put_Layout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyManager_get_Layout_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ PropertyManagerLayout __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_get_Layout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyManager_get_PropertyTabs_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ IPropertyTabs __RPC_FAR *__RPC_FAR *Tabs);


void __RPC_STUB IPropertyManager_get_PropertyTabs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyManager_SetGabaritRect_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [in] */ long Left,
    /* [in] */ long Top,
    /* [in] */ long Right,
    /* [in] */ long Bottom);


void __RPC_STUB IPropertyManager_SetGabaritRect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyManager_GetGabaritRect_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [out] */ long __RPC_FAR *Left,
    /* [out] */ long __RPC_FAR *Top,
    /* [out] */ long __RPC_FAR *Right,
    /* [out] */ long __RPC_FAR *Bottom);


void __RPC_STUB IPropertyManager_GetGabaritRect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyManager_ShowTabs_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_ShowTabs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyManager_UpdateTabs_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_UpdateTabs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyManager_HideTabs_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_HideTabs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyManager_put_SpecToolbar_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [in] */ /* external definition not present */ SpecPropertyToolBarEnum PVal);


void __RPC_STUB IPropertyManager_put_SpecToolbar_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyManager_get_SpecToolbar_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ SpecPropertyToolBarEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_get_SpecToolbar_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyManager_RepeatCommand_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_RepeatCommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyManager_put_AutoHideMode_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyManager_put_AutoHideMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyManager_get_AutoHideMode_Proxy( 
    IPropertyManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyManager_get_AutoHideMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyManager_INTERFACE_DEFINED__ */


#ifndef __IPropertyTextButton_INTERFACE_DEFINED__
#define __IPropertyTextButton_INTERFACE_DEFINED__

/* interface IPropertyTextButton */
/* [helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid][object] */ 


DEFINE_GUID(IID_IPropertyTextButton,0x3CDFE85F,0x643D,0x4008,0xAE,0x32,0x37,0x9C,0x0E,0xB3,0xFB,0x7F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3CDFE85F-643D-4008-AE32-379C0EB3FB7F")
    IPropertyTextButton : public IPropertyControl
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IPropertyTextButtonVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyTextButton __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyTextButton __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyTextButton __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyTextButtonVtbl;

    interface IPropertyTextButton
    {
        CONST_VTBL struct IPropertyTextButtonVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyTextButton_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyTextButton_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyTextButton_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyTextButton_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyTextButton_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyTextButton_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyTextButton_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyTextButton_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyTextButton_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyTextButton_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyTextButton_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyTextButton_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyTextButton_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyTextButton_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyTextButton_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyTextButton_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyTextButton_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyTextButton_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyTextButton_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyTextButton_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyTextButton_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IPropertyTextButton_INTERFACE_DEFINED__ */


#ifndef __IPropertySpinEdit_INTERFACE_DEFINED__
#define __IPropertySpinEdit_INTERFACE_DEFINED__

/* interface IPropertySpinEdit */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertySpinEdit,0xF214A46D,0x2BA9,0x40ad,0xA3,0x2D,0xE6,0x96,0xEF,0x9C,0x89,0x5A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F214A46D-2BA9-40ad-A32D-E696EF9C895A")
    IPropertySpinEdit : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxValue( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetValueRange( 
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WithCheck( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WithCheck( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CheckState( 
            /* [in] */ /* external definition not present */ CheckStateEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CheckState( 
            /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [defaultvalue][in] */ long NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertySpinEditVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertySpinEdit __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertySpinEdit __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinValue )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MaxValue )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetValueRange )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ VARIANT MinVal,
            /* [in] */ VARIANT MaxVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WithCheck )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WithCheck )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CheckState )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [in] */ /* external definition not present */ CheckStateEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CheckState )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertySpinEdit __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertySpinEditVtbl;

    interface IPropertySpinEdit
    {
        CONST_VTBL struct IPropertySpinEditVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertySpinEdit_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertySpinEdit_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertySpinEdit_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertySpinEdit_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertySpinEdit_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertySpinEdit_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertySpinEdit_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertySpinEdit_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertySpinEdit_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertySpinEdit_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertySpinEdit_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertySpinEdit_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertySpinEdit_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertySpinEdit_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertySpinEdit_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertySpinEdit_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertySpinEdit_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertySpinEdit_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertySpinEdit_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertySpinEdit_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertySpinEdit_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertySpinEdit_get_MinValue(This,PVal)	\
    (This)->lpVtbl -> get_MinValue(This,PVal)

#define IPropertySpinEdit_get_MaxValue(This,PVal)	\
    (This)->lpVtbl -> get_MaxValue(This,PVal)

#define IPropertySpinEdit_SetValueRange(This,MinVal,MaxVal,PVal)	\
    (This)->lpVtbl -> SetValueRange(This,MinVal,MaxVal,PVal)

#define IPropertySpinEdit_put_WithCheck(This,NewVal)	\
    (This)->lpVtbl -> put_WithCheck(This,NewVal)

#define IPropertySpinEdit_get_WithCheck(This,PVal)	\
    (This)->lpVtbl -> get_WithCheck(This,PVal)

#define IPropertySpinEdit_put_CheckState(This,NewVal)	\
    (This)->lpVtbl -> put_CheckState(This,NewVal)

#define IPropertySpinEdit_get_CheckState(This,PVal)	\
    (This)->lpVtbl -> get_CheckState(This,PVal)

#define IPropertySpinEdit_put_ReadOnly(This,NewVal)	\
    (This)->lpVtbl -> put_ReadOnly(This,NewVal)

#define IPropertySpinEdit_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IPropertySpinEdit_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define IPropertySpinEdit_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_get_MinValue_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_get_MinValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_get_MaxValue_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_get_MaxValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_SetValueRange_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [in] */ VARIANT MinVal,
    /* [in] */ VARIANT MaxVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_SetValueRange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_put_WithCheck_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertySpinEdit_put_WithCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_get_WithCheck_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_get_WithCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_put_CheckState_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [in] */ /* external definition not present */ CheckStateEnum NewVal);


void __RPC_STUB IPropertySpinEdit_put_CheckState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_get_CheckState_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ CheckStateEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_get_CheckState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_put_ReadOnly_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertySpinEdit_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_get_ReadOnly_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_put_Width_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertySpinEdit_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertySpinEdit_get_Width_Proxy( 
    IPropertySpinEdit __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertySpinEdit_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertySpinEdit_INTERFACE_DEFINED__ */


#ifndef __IPropertyFileName_INTERFACE_DEFINED__
#define __IPropertyFileName_INTERFACE_DEFINED__

/* interface IPropertyFileName */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyFileName,0xDB1F3224,0x837E,0x437f,0x89,0x44,0x6F,0xB9,0x70,0x3F,0x52,0x8B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DB1F3224-837E-437f-8944-6FB9703F528B")
    IPropertyFileName : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreateOpenButton( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreateOpenButton( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Bitmap( 
            /* [in] */ VARIANT Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Extension( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Extension( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Filter( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Filter( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResModule( 
            /* [in] */ VARIANT hInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResModule( 
            /* [retval][out] */ VARIANT __RPC_FAR *hInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [defaultvalue][in] */ long NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyFileNameVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyFileName __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyFileName __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyFileName __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CreateOpenButton )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CreateOpenButton )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Bitmap )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Extension )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Extension )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Filter )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Filter )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResModule )( 
            IPropertyFileName __RPC_FAR * This,
            /* [in] */ VARIANT hInstance);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResModule )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *hInstance);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertyFileName __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertyFileName __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyFileNameVtbl;

    interface IPropertyFileName
    {
        CONST_VTBL struct IPropertyFileNameVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPropertyFileName_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyFileName_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyFileName_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyFileName_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyFileName_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyFileName_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyFileName_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyFileName_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyFileName_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyFileName_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyFileName_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyFileName_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyFileName_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyFileName_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyFileName_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyFileName_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyFileName_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyFileName_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyFileName_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyFileName_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyFileName_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyFileName_put_CreateOpenButton(This,Val)	\
    (This)->lpVtbl -> put_CreateOpenButton(This,Val)

#define IPropertyFileName_get_CreateOpenButton(This,PVal)	\
    (This)->lpVtbl -> get_CreateOpenButton(This,PVal)

#define IPropertyFileName_put_Bitmap(This,Val)	\
    (This)->lpVtbl -> put_Bitmap(This,Val)

#define IPropertyFileName_put_Extension(This,Val)	\
    (This)->lpVtbl -> put_Extension(This,Val)

#define IPropertyFileName_get_Extension(This,PVal)	\
    (This)->lpVtbl -> get_Extension(This,PVal)

#define IPropertyFileName_put_Filter(This,Val)	\
    (This)->lpVtbl -> put_Filter(This,Val)

#define IPropertyFileName_get_Filter(This,PVal)	\
    (This)->lpVtbl -> get_Filter(This,PVal)

#define IPropertyFileName_put_ResModule(This,hInstance)	\
    (This)->lpVtbl -> put_ResModule(This,hInstance)

#define IPropertyFileName_get_ResModule(This,hInstance)	\
    (This)->lpVtbl -> get_ResModule(This,hInstance)

#define IPropertyFileName_put_ReadOnly(This,NewVal)	\
    (This)->lpVtbl -> put_ReadOnly(This,NewVal)

#define IPropertyFileName_get_ReadOnly(This,PVal)	\
    (This)->lpVtbl -> get_ReadOnly(This,PVal)

#define IPropertyFileName_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define IPropertyFileName_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_CreateOpenButton_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyFileName_put_CreateOpenButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_get_CreateOpenButton_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyFileName_get_CreateOpenButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_Bitmap_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB IPropertyFileName_put_Bitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_Extension_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IPropertyFileName_put_Extension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_get_Extension_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyFileName_get_Extension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_Filter_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IPropertyFileName_put_Filter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_get_Filter_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyFileName_get_Filter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_ResModule_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [in] */ VARIANT hInstance);


void __RPC_STUB IPropertyFileName_put_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_get_ResModule_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *hInstance);


void __RPC_STUB IPropertyFileName_get_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_ReadOnly_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyFileName_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_get_ReadOnly_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyFileName_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_put_Width_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertyFileName_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyFileName_get_Width_Proxy( 
    IPropertyFileName __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyFileName_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyFileName_INTERFACE_DEFINED__ */


#ifndef __IPropertyColor_INTERFACE_DEFINED__
#define __IPropertyColor_INTERFACE_DEFINED__

/* interface IPropertyColor */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyColor,0xFC5CDCFB,0x3F67,0x43a1,0x8F,0xC4,0x12,0x78,0xB9,0x01,0xCE,0x0E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FC5CDCFB-3F67-43a1-8FC4-1278B901CE0E")
    IPropertyColor : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [defaultvalue][in] */ long NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableDefaultButton( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableDefaultButton( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DefaultColor( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultColor( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DefaultButtonName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultButtonName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyColorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyColor __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyColor __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyColor __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IPropertyColor __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EnableDefaultButton )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EnableDefaultButton )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefaultColor )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultColor )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DefaultButtonName )( 
            IPropertyColor __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultButtonName )( 
            IPropertyColor __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyColorVtbl;

    interface IPropertyColor
    {
        CONST_VTBL struct IPropertyColorVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPropertyColor_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPropertyColor_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPropertyColor_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPropertyColor_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPropertyColor_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPropertyColor_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPropertyColor_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPropertyColor_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyColor_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyColor_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyColor_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyColor_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyColor_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyColor_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyColor_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyColor_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyColor_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyColor_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyColor_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyColor_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyColor_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyColor_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyColor_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyColor_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyColor_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyColor_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyColor_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyColor_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyColor_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define IPropertyColor_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#define IPropertyColor_put_EnableDefaultButton(This,Val)	\
    (This)->lpVtbl -> put_EnableDefaultButton(This,Val)

#define IPropertyColor_get_EnableDefaultButton(This,PVal)	\
    (This)->lpVtbl -> get_EnableDefaultButton(This,PVal)

#define IPropertyColor_put_DefaultColor(This,Val)	\
    (This)->lpVtbl -> put_DefaultColor(This,Val)

#define IPropertyColor_get_DefaultColor(This,PVal)	\
    (This)->lpVtbl -> get_DefaultColor(This,PVal)

#define IPropertyColor_put_DefaultButtonName(This,Val)	\
    (This)->lpVtbl -> put_DefaultButtonName(This,Val)

#define IPropertyColor_get_DefaultButtonName(This,PVal)	\
    (This)->lpVtbl -> get_DefaultButtonName(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyColor_put_Width_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IPropertyColor_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyColor_get_Width_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyColor_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyColor_put_EnableDefaultButton_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyColor_put_EnableDefaultButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyColor_get_EnableDefaultButton_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyColor_get_EnableDefaultButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyColor_put_DefaultColor_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB IPropertyColor_put_DefaultColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyColor_get_DefaultColor_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyColor_get_DefaultColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyColor_put_DefaultButtonName_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IPropertyColor_put_DefaultButtonName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyColor_get_DefaultButtonName_Proxy( 
    IPropertyColor __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyColor_get_DefaultButtonName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyColor_INTERFACE_DEFINED__ */


#ifndef __IPropertyEditList_INTERFACE_DEFINED__
#define __IPropertyEditList_INTERFACE_DEFINED__

/* interface IPropertyEditList */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyEditList,0xFDB82760,0x7EA3,0x408e,0x86,0x99,0xA8,0x39,0x2A,0xCF,0xD8,0x10);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FDB82760-7EA3-408e-8699-A8392ACFD810")
    IPropertyEditList : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ListType( 
            /* [retval][out] */ /* external definition not present */ ksEditListTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ListType( 
            /* [in] */ /* external definition not present */ ksEditListTypeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemChecked( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ItemChecked( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MultySelect( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MultySelect( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemSelected( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ItemSelected( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sort( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sort( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearList( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ VARIANT Index) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemsCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ItemValue( 
            /* [in] */ VARIANT Index,
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemValue( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Find( 
            /* [in] */ VARIANT Val,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyEditListVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyEditList __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyEditList __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyEditList __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ListType )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksEditListTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ListType )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksEditListTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemChecked )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ItemChecked )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MultySelect )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MultySelect )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemSelected )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ItemSelected )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sort )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sort )( 
            IPropertyEditList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearList )( 
            IPropertyEditList __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ VARIANT Index);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemsCount )( 
            IPropertyEditList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ItemValue )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemValue )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Find )( 
            IPropertyEditList __RPC_FAR * This,
            /* [in] */ VARIANT Val,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyEditListVtbl;

    interface IPropertyEditList
    {
        CONST_VTBL struct IPropertyEditListVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPropertyEditList_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPropertyEditList_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPropertyEditList_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPropertyEditList_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPropertyEditList_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPropertyEditList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPropertyEditList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPropertyEditList_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyEditList_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyEditList_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyEditList_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyEditList_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyEditList_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyEditList_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyEditList_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyEditList_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyEditList_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyEditList_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyEditList_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyEditList_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyEditList_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyEditList_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyEditList_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyEditList_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyEditList_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyEditList_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyEditList_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyEditList_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyEditList_get_ListType(This,pVal)	\
    (This)->lpVtbl -> get_ListType(This,pVal)

#define IPropertyEditList_put_ListType(This,Val)	\
    (This)->lpVtbl -> put_ListType(This,Val)

#define IPropertyEditList_get_ItemChecked(This,Index,PVal)	\
    (This)->lpVtbl -> get_ItemChecked(This,Index,PVal)

#define IPropertyEditList_put_ItemChecked(This,Index,Val)	\
    (This)->lpVtbl -> put_ItemChecked(This,Index,Val)

#define IPropertyEditList_get_MultySelect(This,pVal)	\
    (This)->lpVtbl -> get_MultySelect(This,pVal)

#define IPropertyEditList_put_MultySelect(This,Val)	\
    (This)->lpVtbl -> put_MultySelect(This,Val)

#define IPropertyEditList_get_ItemSelected(This,Index,PVal)	\
    (This)->lpVtbl -> get_ItemSelected(This,Index,PVal)

#define IPropertyEditList_put_ItemSelected(This,Index,Val)	\
    (This)->lpVtbl -> put_ItemSelected(This,Index,Val)

#define IPropertyEditList_get_Sort(This,PVal)	\
    (This)->lpVtbl -> get_Sort(This,PVal)

#define IPropertyEditList_put_Sort(This,NewVal)	\
    (This)->lpVtbl -> put_Sort(This,NewVal)

#define IPropertyEditList_ClearList(This)	\
    (This)->lpVtbl -> ClearList(This)

#define IPropertyEditList_Add(This,NewVal)	\
    (This)->lpVtbl -> Add(This,NewVal)

#define IPropertyEditList_Delete(This,Index)	\
    (This)->lpVtbl -> Delete(This,Index)

#define IPropertyEditList_get_ItemsCount(This,PVal)	\
    (This)->lpVtbl -> get_ItemsCount(This,PVal)

#define IPropertyEditList_put_ItemValue(This,Index,PVal)	\
    (This)->lpVtbl -> put_ItemValue(This,Index,PVal)

#define IPropertyEditList_get_ItemValue(This,Index,PVal)	\
    (This)->lpVtbl -> get_ItemValue(This,Index,PVal)

#define IPropertyEditList_Find(This,Val,PVal)	\
    (This)->lpVtbl -> Find(This,Val,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_ListType_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksEditListTypeEnum __RPC_FAR *pVal);


void __RPC_STUB IPropertyEditList_get_ListType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_put_ListType_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksEditListTypeEnum Val);


void __RPC_STUB IPropertyEditList_put_ListType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_ItemChecked_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyEditList_get_ItemChecked_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_put_ItemChecked_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyEditList_put_ItemChecked_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_MultySelect_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IPropertyEditList_get_MultySelect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_put_MultySelect_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyEditList_put_MultySelect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_ItemSelected_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyEditList_get_ItemSelected_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_put_ItemSelected_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyEditList_put_ItemSelected_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_Sort_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyEditList_get_Sort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_put_Sort_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyEditList_put_Sort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_ClearList_Proxy( 
    IPropertyEditList __RPC_FAR * This);


void __RPC_STUB IPropertyEditList_ClearList_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_Add_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IPropertyEditList_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_Delete_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ VARIANT Index);


void __RPC_STUB IPropertyEditList_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_ItemsCount_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyEditList_get_ItemsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_put_ItemValue_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [in] */ BSTR PVal);


void __RPC_STUB IPropertyEditList_put_ItemValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_get_ItemValue_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyEditList_get_ItemValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyEditList_Find_Proxy( 
    IPropertyEditList __RPC_FAR * This,
    /* [in] */ VARIANT Val,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyEditList_Find_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyEditList_INTERFACE_DEFINED__ */


#ifndef __IPropertyToolBar_INTERFACE_DEFINED__
#define __IPropertyToolBar_INTERFACE_DEFINED__

/* interface IPropertyToolBar */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyToolBar,0xC2523B7E,0xEB4B,0x45db,0x8E,0x3B,0x9D,0x6C,0xCE,0xD9,0x93,0x33);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C2523B7E-EB4B-45db-8E3B-9D6CCED99333")
    IPropertyToolBar : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonChecked( 
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonChecked( 
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonEnable( 
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonEnable( 
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddButton( 
            /* [in] */ long BtnID,
            /* [in] */ VARIANT Bmp,
            /* [defaultvalue][in] */ long InsertAt = -1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResModule( 
            /* [in] */ VARIANT HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResModule( 
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonTips( 
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonTips( 
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonHint( 
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonHint( 
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ButtonType( 
            /* [in] */ long BtnID,
            /* [in] */ /* external definition not present */ ButtonTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ButtonType( 
            /* [in] */ long BtnID,
            /* [retval][out] */ /* external definition not present */ ButtonTypeEnum __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyToolBarVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyToolBar __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyToolBar __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonChecked )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonChecked )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonEnable )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonEnable )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddButton )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ VARIANT Bmp,
            /* [defaultvalue][in] */ long InsertAt);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResModule )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ VARIANT HInstance);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResModule )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonTips )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonTips )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonHint )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonHint )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ButtonType )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [in] */ /* external definition not present */ ButtonTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ButtonType )( 
            IPropertyToolBar __RPC_FAR * This,
            /* [in] */ long BtnID,
            /* [retval][out] */ /* external definition not present */ ButtonTypeEnum __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyToolBarVtbl;

    interface IPropertyToolBar
    {
        CONST_VTBL struct IPropertyToolBarVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPropertyToolBar_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPropertyToolBar_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPropertyToolBar_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPropertyToolBar_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPropertyToolBar_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPropertyToolBar_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPropertyToolBar_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPropertyToolBar_put_ButtonChecked(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonChecked(This,BtnID,NewVal)

#define IPropertyToolBar_get_ButtonChecked(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonChecked(This,BtnID,PVal)

#define IPropertyToolBar_put_ButtonEnable(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonEnable(This,BtnID,NewVal)

#define IPropertyToolBar_get_ButtonEnable(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonEnable(This,BtnID,PVal)

#define IPropertyToolBar_AddButton(This,BtnID,Bmp,InsertAt)	\
    (This)->lpVtbl -> AddButton(This,BtnID,Bmp,InsertAt)

#define IPropertyToolBar_put_ResModule(This,HInstance)	\
    (This)->lpVtbl -> put_ResModule(This,HInstance)

#define IPropertyToolBar_get_ResModule(This,HInstance)	\
    (This)->lpVtbl -> get_ResModule(This,HInstance)

#define IPropertyToolBar_put_ButtonTips(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonTips(This,BtnID,NewVal)

#define IPropertyToolBar_get_ButtonTips(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonTips(This,BtnID,PVal)

#define IPropertyToolBar_put_ButtonHint(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonHint(This,BtnID,NewVal)

#define IPropertyToolBar_get_ButtonHint(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonHint(This,BtnID,PVal)

#define IPropertyToolBar_put_ButtonType(This,BtnID,NewVal)	\
    (This)->lpVtbl -> put_ButtonType(This,BtnID,NewVal)

#define IPropertyToolBar_get_ButtonType(This,BtnID,PVal)	\
    (This)->lpVtbl -> get_ButtonType(This,BtnID,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_put_ButtonChecked_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyToolBar_put_ButtonChecked_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_get_ButtonChecked_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyToolBar_get_ButtonChecked_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_put_ButtonEnable_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPropertyToolBar_put_ButtonEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_get_ButtonEnable_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyToolBar_get_ButtonEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_AddButton_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ VARIANT Bmp,
    /* [defaultvalue][in] */ long InsertAt);


void __RPC_STUB IPropertyToolBar_AddButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_put_ResModule_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ VARIANT HInstance);


void __RPC_STUB IPropertyToolBar_put_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_get_ResModule_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *HInstance);


void __RPC_STUB IPropertyToolBar_get_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_put_ButtonTips_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IPropertyToolBar_put_ButtonTips_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_get_ButtonTips_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyToolBar_get_ButtonTips_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_put_ButtonHint_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IPropertyToolBar_put_ButtonHint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_get_ButtonHint_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyToolBar_get_ButtonHint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_put_ButtonType_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [in] */ /* external definition not present */ ButtonTypeEnum NewVal);


void __RPC_STUB IPropertyToolBar_put_ButtonType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyToolBar_get_ButtonType_Proxy( 
    IPropertyToolBar __RPC_FAR * This,
    /* [in] */ long BtnID,
    /* [retval][out] */ /* external definition not present */ ButtonTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPropertyToolBar_get_ButtonType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyToolBar_INTERFACE_DEFINED__ */


#ifndef __IPropertyBmpList_INTERFACE_DEFINED__
#define __IPropertyBmpList_INTERFACE_DEFINED__

/* interface IPropertyBmpList */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyBmpList,0xD18D34F5,0x0028,0x4853,0x99,0x8C,0x25,0xA4,0x8D,0x14,0x1B,0x43);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D18D34F5-0028-4853-998C-25A48D141B43")
    IPropertyBmpList : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR NewStr,
            /* [in] */ VARIANT NewBmp) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearList( void) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Find( 
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentIndex( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentIndex( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResModule( 
            /* [in] */ VARIANT HInstance) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResModule( 
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyBmpListVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyBmpList __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyBmpList __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ BSTR NewStr,
            /* [in] */ VARIANT NewBmp);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearList )( 
            IPropertyBmpList __RPC_FAR * This);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Find )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CurrentIndex )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentIndex )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResModule )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [in] */ VARIANT HInstance);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResModule )( 
            IPropertyBmpList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *HInstance);
        
        END_INTERFACE
    } IPropertyBmpListVtbl;

    interface IPropertyBmpList
    {
        CONST_VTBL struct IPropertyBmpListVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPropertyBmpList_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPropertyBmpList_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPropertyBmpList_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPropertyBmpList_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPropertyBmpList_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPropertyBmpList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPropertyBmpList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPropertyBmpList_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyBmpList_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyBmpList_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyBmpList_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyBmpList_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyBmpList_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyBmpList_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyBmpList_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyBmpList_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyBmpList_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyBmpList_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyBmpList_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyBmpList_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyBmpList_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyBmpList_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyBmpList_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyBmpList_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyBmpList_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyBmpList_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyBmpList_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyBmpList_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyBmpList_Add(This,NewStr,NewBmp)	\
    (This)->lpVtbl -> Add(This,NewStr,NewBmp)

#define IPropertyBmpList_get_Count(This,count)	\
    (This)->lpVtbl -> get_Count(This,count)

#define IPropertyBmpList_ClearList(This)	\
    (This)->lpVtbl -> ClearList(This)

#define IPropertyBmpList_Find(This,Val,PVal)	\
    (This)->lpVtbl -> Find(This,Val,PVal)

#define IPropertyBmpList_put_CurrentIndex(This,Val)	\
    (This)->lpVtbl -> put_CurrentIndex(This,Val)

#define IPropertyBmpList_get_CurrentIndex(This,PVal)	\
    (This)->lpVtbl -> get_CurrentIndex(This,PVal)

#define IPropertyBmpList_put_ResModule(This,HInstance)	\
    (This)->lpVtbl -> put_ResModule(This,HInstance)

#define IPropertyBmpList_get_ResModule(This,HInstance)	\
    (This)->lpVtbl -> get_ResModule(This,HInstance)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_Add_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [in] */ BSTR NewStr,
    /* [in] */ VARIANT NewBmp);


void __RPC_STUB IPropertyBmpList_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_get_Count_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *count);


void __RPC_STUB IPropertyBmpList_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_ClearList_Proxy( 
    IPropertyBmpList __RPC_FAR * This);


void __RPC_STUB IPropertyBmpList_ClearList_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_Find_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [in] */ BSTR Val,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyBmpList_Find_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_put_CurrentIndex_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB IPropertyBmpList_put_CurrentIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_get_CurrentIndex_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyBmpList_get_CurrentIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_put_ResModule_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [in] */ VARIANT HInstance);


void __RPC_STUB IPropertyBmpList_put_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyBmpList_get_ResModule_Proxy( 
    IPropertyBmpList __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *HInstance);


void __RPC_STUB IPropertyBmpList_get_ResModule_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyBmpList_INTERFACE_DEFINED__ */


#ifndef __IProcessInfoWindow_INTERFACE_DEFINED__
#define __IProcessInfoWindow_INTERFACE_DEFINED__

/* interface IProcessInfoWindow */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProcessInfoWindow,0x06F93FBF,0xC65A,0x49b1,0x83,0xDB,0xC7,0x36,0xBA,0x33,0xF0,0xA5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("06F93FBF-C65A-49b1-83DB-C736BA33F0A5")
    IProcessInfoWindow : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreateWindow( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreateWindow( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WindowCaption( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WindowCaption( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CloseProcess( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CloseProcess( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Text( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HelpId( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HelpId( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProcessInfoWindowVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProcessInfoWindow __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProcessInfoWindow __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CreateWindow )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CreateWindow )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WindowCaption )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WindowCaption )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CloseProcess )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CloseProcess )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Text )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HelpId )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HelpId )( 
            IProcessInfoWindow __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IProcessInfoWindowVtbl;

    interface IProcessInfoWindow
    {
        CONST_VTBL struct IProcessInfoWindowVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IProcessInfoWindow_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IProcessInfoWindow_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IProcessInfoWindow_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IProcessInfoWindow_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IProcessInfoWindow_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IProcessInfoWindow_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IProcessInfoWindow_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IProcessInfoWindow_put_CreateWindow(This,NewVal)	\
    (This)->lpVtbl -> put_CreateWindow(This,NewVal)

#define IProcessInfoWindow_get_CreateWindow(This,PVal)	\
    (This)->lpVtbl -> get_CreateWindow(This,PVal)

#define IProcessInfoWindow_put_WindowCaption(This,NewVal)	\
    (This)->lpVtbl -> put_WindowCaption(This,NewVal)

#define IProcessInfoWindow_get_WindowCaption(This,PVal)	\
    (This)->lpVtbl -> get_WindowCaption(This,PVal)

#define IProcessInfoWindow_put_CloseProcess(This,NewVal)	\
    (This)->lpVtbl -> put_CloseProcess(This,NewVal)

#define IProcessInfoWindow_get_CloseProcess(This,PVal)	\
    (This)->lpVtbl -> get_CloseProcess(This,PVal)

#define IProcessInfoWindow_put_Visible(This,NewVal)	\
    (This)->lpVtbl -> put_Visible(This,NewVal)

#define IProcessInfoWindow_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IProcessInfoWindow_put_Text(This,NewVal)	\
    (This)->lpVtbl -> put_Text(This,NewVal)

#define IProcessInfoWindow_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IProcessInfoWindow_put_HelpId(This,NewVal)	\
    (This)->lpVtbl -> put_HelpId(This,NewVal)

#define IProcessInfoWindow_get_HelpId(This,PVal)	\
    (This)->lpVtbl -> get_HelpId(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_put_CreateWindow_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IProcessInfoWindow_put_CreateWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_get_CreateWindow_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProcessInfoWindow_get_CreateWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_put_WindowCaption_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IProcessInfoWindow_put_WindowCaption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_get_WindowCaption_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProcessInfoWindow_get_WindowCaption_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_put_CloseProcess_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IProcessInfoWindow_put_CloseProcess_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_get_CloseProcess_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProcessInfoWindow_get_CloseProcess_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_put_Visible_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IProcessInfoWindow_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_get_Visible_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProcessInfoWindow_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_put_Text_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IProcessInfoWindow_put_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_get_Text_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProcessInfoWindow_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_put_HelpId_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IProcessInfoWindow_put_HelpId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcessInfoWindow_get_HelpId_Proxy( 
    IProcessInfoWindow __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IProcessInfoWindow_get_HelpId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProcessInfoWindow_INTERFACE_DEFINED__ */


#ifndef __IPropertyLibExplorer_INTERFACE_DEFINED__
#define __IPropertyLibExplorer_INTERFACE_DEFINED__

/* interface IPropertyLibExplorer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyLibExplorer,0x2A214701,0x0BCB,0x406c,0xB5,0x7F,0x6D,0xFA,0xDD,0x79,0x9A,0x64);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2A214701-0BCB-406c-B57F-6DFADD799A64")
    IPropertyLibExplorer : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
            /* [in] */ BSTR NewText) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RootName( 
            /* [in] */ BSTR NewText) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RootName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileValue( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyLibExplorerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyLibExplorer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyLibExplorer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RootName )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RootName )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileValue )( 
            IPropertyLibExplorer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyLibExplorerVtbl;

    interface IPropertyLibExplorer
    {
        CONST_VTBL struct IPropertyLibExplorerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPropertyLibExplorer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPropertyLibExplorer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPropertyLibExplorer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPropertyLibExplorer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPropertyLibExplorer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPropertyLibExplorer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPropertyLibExplorer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPropertyLibExplorer_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyLibExplorer_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyLibExplorer_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyLibExplorer_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyLibExplorer_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyLibExplorer_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyLibExplorer_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyLibExplorer_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyLibExplorer_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyLibExplorer_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyLibExplorer_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyLibExplorer_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyLibExplorer_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyLibExplorer_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyLibExplorer_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyLibExplorer_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyLibExplorer_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyLibExplorer_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyLibExplorer_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyLibExplorer_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyLibExplorer_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyLibExplorer_put_FileName(This,NewText)	\
    (This)->lpVtbl -> put_FileName(This,NewText)

#define IPropertyLibExplorer_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IPropertyLibExplorer_put_RootName(This,NewText)	\
    (This)->lpVtbl -> put_RootName(This,NewText)

#define IPropertyLibExplorer_get_RootName(This,PVal)	\
    (This)->lpVtbl -> get_RootName(This,PVal)

#define IPropertyLibExplorer_get_FileValue(This,PVal)	\
    (This)->lpVtbl -> get_FileValue(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyLibExplorer_put_FileName_Proxy( 
    IPropertyLibExplorer __RPC_FAR * This,
    /* [in] */ BSTR NewText);


void __RPC_STUB IPropertyLibExplorer_put_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyLibExplorer_get_FileName_Proxy( 
    IPropertyLibExplorer __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyLibExplorer_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyLibExplorer_put_RootName_Proxy( 
    IPropertyLibExplorer __RPC_FAR * This,
    /* [in] */ BSTR NewText);


void __RPC_STUB IPropertyLibExplorer_put_RootName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyLibExplorer_get_RootName_Proxy( 
    IPropertyLibExplorer __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPropertyLibExplorer_get_RootName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyLibExplorer_get_FileValue_Proxy( 
    IPropertyLibExplorer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyLibExplorer_get_FileValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyLibExplorer_INTERFACE_DEFINED__ */


#ifndef __IViewsAndLayersManager_INTERFACE_DEFINED__
#define __IViewsAndLayersManager_INTERFACE_DEFINED__

/* interface IViewsAndLayersManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IViewsAndLayersManager,0xA4737593,0x578B,0x4187,0x8C,0xAD,0xE1,0x05,0x6E,0xB5,0x40,0x4B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A4737593-578B-4187-8CAD-E1056EB5404B")
    IViewsAndLayersManager : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Views( 
            /* [retval][out] */ IViews __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerGroups( 
            /* [retval][out] */ ILayerGroups __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IViewsAndLayersManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IViewsAndLayersManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IViewsAndLayersManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Views )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [retval][out] */ IViews __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerGroups )( 
            IViewsAndLayersManager __RPC_FAR * This,
            /* [retval][out] */ ILayerGroups __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IViewsAndLayersManagerVtbl;

    interface IViewsAndLayersManager
    {
        CONST_VTBL struct IViewsAndLayersManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IViewsAndLayersManager_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IViewsAndLayersManager_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IViewsAndLayersManager_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IViewsAndLayersManager_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IViewsAndLayersManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IViewsAndLayersManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IViewsAndLayersManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IViewsAndLayersManager_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IViewsAndLayersManager_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IViewsAndLayersManager_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IViewsAndLayersManager_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IViewsAndLayersManager_get_Views(This,PVal)	\
    (This)->lpVtbl -> get_Views(This,PVal)

#define IViewsAndLayersManager_get_LayerGroups(This,PVal)	\
    (This)->lpVtbl -> get_LayerGroups(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewsAndLayersManager_get_Views_Proxy( 
    IViewsAndLayersManager __RPC_FAR * This,
    /* [retval][out] */ IViews __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IViewsAndLayersManager_get_Views_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewsAndLayersManager_get_LayerGroups_Proxy( 
    IViewsAndLayersManager __RPC_FAR * This,
    /* [retval][out] */ ILayerGroups __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IViewsAndLayersManager_get_LayerGroups_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IViewsAndLayersManager_INTERFACE_DEFINED__ */


#ifndef __IViews_INTERFACE_DEFINED__
#define __IViews_INTERFACE_DEFINED__

/* interface IViews */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IViews,0x9CD1B5E6,0xC1A2,0x4910,0x8D,0x0C,0x97,0x08,0x0B,0x14,0xAA,0x3D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9CD1B5E6-C1A2-4910-8D0C-97080B14AA3D")
    IViews : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_View( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewByNumber( 
            /* [in] */ long Numb,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ LtViewType ViewType,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveView( 
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddStandartViews( 
            /* [in] */ BSTR FileName,
            /* [in] */ BSTR ProjectionName,
            /* [in] */ VARIANT ProjectionsTypes,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Scale,
            /* [in] */ double DX,
            /* [in] */ double DY,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IViewsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IViews __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IViews __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IViews __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IViews __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IViews __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IViews __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IViews __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IViews __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_View )( 
            IViews __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewByNumber )( 
            IViews __RPC_FAR * This,
            /* [in] */ long Numb,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IViews __RPC_FAR * This,
            /* [in] */ /* external definition not present */ LtViewType ViewType,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveView )( 
            IViews __RPC_FAR * This,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddStandartViews )( 
            IViews __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [in] */ BSTR ProjectionName,
            /* [in] */ VARIANT ProjectionsTypes,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Scale,
            /* [in] */ double DX,
            /* [in] */ double DY,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IViewsVtbl;

    interface IViews
    {
        CONST_VTBL struct IViewsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IViews_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IViews_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IViews_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IViews_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IViews_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IViews_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IViews_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IViews_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IViews_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IViews_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IViews_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IViews_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IViews_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IViews_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IViews_get_View(This,Index,Result)	\
    (This)->lpVtbl -> get_View(This,Index,Result)

#define IViews_get_ViewByNumber(This,Numb,Result)	\
    (This)->lpVtbl -> get_ViewByNumber(This,Numb,Result)

#define IViews_Add(This,ViewType,Result)	\
    (This)->lpVtbl -> Add(This,ViewType,Result)

#define IViews_get_ActiveView(This,Result)	\
    (This)->lpVtbl -> get_ActiveView(This,Result)

#define IViews_AddStandartViews(This,FileName,ProjectionName,ProjectionsTypes,X,Y,Scale,DX,DY,Result)	\
    (This)->lpVtbl -> AddStandartViews(This,FileName,ProjectionName,ProjectionsTypes,X,Y,Scale,DX,DY,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViews_get_View_Proxy( 
    IViews __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IViews_get_View_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViews_get_ViewByNumber_Proxy( 
    IViews __RPC_FAR * This,
    /* [in] */ long Numb,
    /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IViews_get_ViewByNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IViews_Add_Proxy( 
    IViews __RPC_FAR * This,
    /* [in] */ /* external definition not present */ LtViewType ViewType,
    /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IViews_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViews_get_ActiveView_Proxy( 
    IViews __RPC_FAR * This,
    /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IViews_get_ActiveView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IViews_AddStandartViews_Proxy( 
    IViews __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [in] */ BSTR ProjectionName,
    /* [in] */ VARIANT ProjectionsTypes,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Scale,
    /* [in] */ double DX,
    /* [in] */ double DY,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IViews_AddStandartViews_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IViews_INTERFACE_DEFINED__ */


#ifndef __IView_INTERFACE_DEFINED__
#define __IView_INTERFACE_DEFINED__

/* interface IView */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IView,0x21A7BA87,0x1C8B,0x41b4,0x82,0x47,0xCD,0xD5,0x93,0x54,0x6F,0x37);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("21A7BA87-1C8B-41b4-8247-CDD593546F37")
    IView : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Number( 
            /* [in] */ long PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Background( 
            /* [defaultvalue][in] */ VARIANT_BOOL PVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Background( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [defaultvalue][in] */ VARIANT_BOOL PVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Current( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewType( 
            /* [retval][out] */ /* external definition not present */ LtViewType __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layers( 
            /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variables( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variable( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VariablesCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IViewVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IView __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IView __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IView __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IView __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IView __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IView __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IView __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IView __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IView __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Number )( 
            IView __RPC_FAR * This,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IView __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Background )( 
            IView __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Background )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IView __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Current )( 
            IView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            IView __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IView __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectCount )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewType )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ LtViewType __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Layers )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variables )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variable )( 
            IView __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariablesCount )( 
            IView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        END_INTERFACE
    } IViewVtbl;

    interface IView
    {
        CONST_VTBL struct IViewVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IView_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IView_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IView_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IView_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IView_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IView_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IView_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IView_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IView_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IView_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IView_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IView_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IView_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IView_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IView_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IView_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IView_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IView_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IView_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IView_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IView_put_Number(This,PVal)	\
    (This)->lpVtbl -> put_Number(This,PVal)

#define IView_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define IView_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IView_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IView_put_Background(This,PVal)	\
    (This)->lpVtbl -> put_Background(This,PVal)

#define IView_get_Background(This,PVal)	\
    (This)->lpVtbl -> get_Background(This,PVal)

#define IView_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IView_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IView_put_Current(This,NewVal)	\
    (This)->lpVtbl -> put_Current(This,NewVal)

#define IView_get_Current(This,PVal)	\
    (This)->lpVtbl -> get_Current(This,PVal)

#define IView_put_Color(This,NewVal)	\
    (This)->lpVtbl -> put_Color(This,NewVal)

#define IView_get_Color(This,PVal)	\
    (This)->lpVtbl -> get_Color(This,PVal)

#define IView_put_Comment(This,NewVal)	\
    (This)->lpVtbl -> put_Comment(This,NewVal)

#define IView_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#define IView_get_ObjectCount(This,PVal)	\
    (This)->lpVtbl -> get_ObjectCount(This,PVal)

#define IView_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IView_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IView_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IView_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IView_put_Scale(This,NewVal)	\
    (This)->lpVtbl -> put_Scale(This,NewVal)

#define IView_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IView_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IView_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IView_get_ViewType(This,PVal)	\
    (This)->lpVtbl -> get_ViewType(This,PVal)

#define IView_get_Layers(This,PVal)	\
    (This)->lpVtbl -> get_Layers(This,PVal)

#define IView_get_Variables(This,Result)	\
    (This)->lpVtbl -> get_Variables(This,Result)

#define IView_get_Variable(This,Index,Result)	\
    (This)->lpVtbl -> get_Variable(This,Index,Result)

#define IView_get_VariablesCount(This,Result)	\
    (This)->lpVtbl -> get_VariablesCount(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Number_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ long PVal);


void __RPC_STUB IView_put_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Number_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IView_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Name_Proxy( 
    IView __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IView_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Name_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IView_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Background_Proxy( 
    IView __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL PVal);


void __RPC_STUB IView_put_Background_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Background_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IView_get_Background_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Visible_Proxy( 
    IView __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL PVal);


void __RPC_STUB IView_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Visible_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IView_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Current_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IView_put_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Current_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IView_get_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Color_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IView_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Color_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IView_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Comment_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB IView_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Comment_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IView_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_ObjectCount_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IView_get_ObjectCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_X_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IView_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_X_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IView_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Y_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IView_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Y_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IView_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Scale_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IView_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Scale_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IView_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IView_put_Angle_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IView_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Angle_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IView_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_ViewType_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ LtViewType __RPC_FAR *PVal);


void __RPC_STUB IView_get_ViewType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Layers_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IView_get_Layers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Variables_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IView_get_Variables_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_Variable_Proxy( 
    IView __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IView_get_Variable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IView_get_VariablesCount_Proxy( 
    IView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IView_get_VariablesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IView_INTERFACE_DEFINED__ */


#ifndef __IAssociationView_INTERFACE_DEFINED__
#define __IAssociationView_INTERFACE_DEFINED__

/* interface IAssociationView */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAssociationView,0x0825F23C,0x0A73,0x48de,0xBE,0xAB,0xDA,0x2F,0xF3,0x99,0x62,0xC3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0825F23C-0A73-48de-BEAB-DA2FF39962C3")
    IAssociationView : public IView
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceFileName( 
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SourceFileName( 
            /* [in] */ BSTR Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectionName( 
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectionName( 
            /* [in] */ BSTR Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExplodedView( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExplodedView( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLayoutScaling( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectionLink( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectionLink( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Section( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Section( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Unfold( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Unfold( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisibleLinesStyle( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VisibleLinesStyle( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HiddenLines( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HiddenLines( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HiddenLinesVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HiddenLinesVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HiddenLinesStyle( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HiddenLinesStyle( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakLinesVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakLinesVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakLinesStyle( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakLinesStyle( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendLinesVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendLinesVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendLinesStyle( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendLinesStyle( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseView( 
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseView( 
            /* [in] */ IView __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Local( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Local( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateLocalView( 
            /* [in] */ IDrawingObject __RPC_FAR *Contour,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SameHatch( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SameHatch( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAssociationViewVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAssociationView __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAssociationView __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAssociationView __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Number )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IAssociationView __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Background )( 
            IAssociationView __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Background )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IAssociationView __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Current )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectCount )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewType )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ LtViewType __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Layers )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variables )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variable )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariablesCount )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceFileName )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SourceFileName )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectionName )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectionName )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExplodedView )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ExplodedView )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLayoutScaling )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectionLink )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectionLink )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Section )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Section )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Unfold )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Unfold )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VisibleLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VisibleLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HiddenLines )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HiddenLines )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HiddenLinesVisible )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HiddenLinesVisible )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HiddenLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HiddenLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakLinesVisible )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakLinesVisible )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendLinesVisible )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendLinesVisible )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendLinesStyle )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseView )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseView )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ IView __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Local )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Local )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateLocalView )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Contour,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SameHatch )( 
            IAssociationView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SameHatch )( 
            IAssociationView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IAssociationViewVtbl;

    interface IAssociationView
    {
        CONST_VTBL struct IAssociationViewVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAssociationView_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAssociationView_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAssociationView_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAssociationView_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAssociationView_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAssociationView_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAssociationView_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAssociationView_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAssociationView_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAssociationView_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAssociationView_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAssociationView_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IAssociationView_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IAssociationView_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IAssociationView_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IAssociationView_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IAssociationView_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IAssociationView_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IAssociationView_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IAssociationView_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IAssociationView_put_Number(This,PVal)	\
    (This)->lpVtbl -> put_Number(This,PVal)

#define IAssociationView_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define IAssociationView_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IAssociationView_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IAssociationView_put_Background(This,PVal)	\
    (This)->lpVtbl -> put_Background(This,PVal)

#define IAssociationView_get_Background(This,PVal)	\
    (This)->lpVtbl -> get_Background(This,PVal)

#define IAssociationView_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IAssociationView_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IAssociationView_put_Current(This,NewVal)	\
    (This)->lpVtbl -> put_Current(This,NewVal)

#define IAssociationView_get_Current(This,PVal)	\
    (This)->lpVtbl -> get_Current(This,PVal)

#define IAssociationView_put_Color(This,NewVal)	\
    (This)->lpVtbl -> put_Color(This,NewVal)

#define IAssociationView_get_Color(This,PVal)	\
    (This)->lpVtbl -> get_Color(This,PVal)

#define IAssociationView_put_Comment(This,NewVal)	\
    (This)->lpVtbl -> put_Comment(This,NewVal)

#define IAssociationView_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#define IAssociationView_get_ObjectCount(This,PVal)	\
    (This)->lpVtbl -> get_ObjectCount(This,PVal)

#define IAssociationView_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IAssociationView_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IAssociationView_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IAssociationView_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IAssociationView_put_Scale(This,NewVal)	\
    (This)->lpVtbl -> put_Scale(This,NewVal)

#define IAssociationView_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IAssociationView_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IAssociationView_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IAssociationView_get_ViewType(This,PVal)	\
    (This)->lpVtbl -> get_ViewType(This,PVal)

#define IAssociationView_get_Layers(This,PVal)	\
    (This)->lpVtbl -> get_Layers(This,PVal)

#define IAssociationView_get_Variables(This,Result)	\
    (This)->lpVtbl -> get_Variables(This,Result)

#define IAssociationView_get_Variable(This,Index,Result)	\
    (This)->lpVtbl -> get_Variable(This,Index,Result)

#define IAssociationView_get_VariablesCount(This,Result)	\
    (This)->lpVtbl -> get_VariablesCount(This,Result)


#define IAssociationView_get_SourceFileName(This,Result)	\
    (This)->lpVtbl -> get_SourceFileName(This,Result)

#define IAssociationView_put_SourceFileName(This,Value)	\
    (This)->lpVtbl -> put_SourceFileName(This,Value)

#define IAssociationView_get_ProjectionName(This,Result)	\
    (This)->lpVtbl -> get_ProjectionName(This,Result)

#define IAssociationView_put_ProjectionName(This,Value)	\
    (This)->lpVtbl -> put_ProjectionName(This,Value)

#define IAssociationView_get_ExplodedView(This,Result)	\
    (This)->lpVtbl -> get_ExplodedView(This,Result)

#define IAssociationView_put_ExplodedView(This,Value)	\
    (This)->lpVtbl -> put_ExplodedView(This,Value)

#define IAssociationView_put_DimensionLayoutScaling(This,Value)	\
    (This)->lpVtbl -> put_DimensionLayoutScaling(This,Value)

#define IAssociationView_get_ProjectionLink(This,Result)	\
    (This)->lpVtbl -> get_ProjectionLink(This,Result)

#define IAssociationView_put_ProjectionLink(This,Value)	\
    (This)->lpVtbl -> put_ProjectionLink(This,Value)

#define IAssociationView_get_Section(This,Result)	\
    (This)->lpVtbl -> get_Section(This,Result)

#define IAssociationView_put_Section(This,Value)	\
    (This)->lpVtbl -> put_Section(This,Value)

#define IAssociationView_get_Unfold(This,Result)	\
    (This)->lpVtbl -> get_Unfold(This,Result)

#define IAssociationView_put_Unfold(This,Value)	\
    (This)->lpVtbl -> put_Unfold(This,Value)

#define IAssociationView_get_VisibleLinesStyle(This,Result)	\
    (This)->lpVtbl -> get_VisibleLinesStyle(This,Result)

#define IAssociationView_put_VisibleLinesStyle(This,Value)	\
    (This)->lpVtbl -> put_VisibleLinesStyle(This,Value)

#define IAssociationView_get_HiddenLines(This,Result)	\
    (This)->lpVtbl -> get_HiddenLines(This,Result)

#define IAssociationView_put_HiddenLines(This,Value)	\
    (This)->lpVtbl -> put_HiddenLines(This,Value)

#define IAssociationView_get_HiddenLinesVisible(This,Result)	\
    (This)->lpVtbl -> get_HiddenLinesVisible(This,Result)

#define IAssociationView_put_HiddenLinesVisible(This,Value)	\
    (This)->lpVtbl -> put_HiddenLinesVisible(This,Value)

#define IAssociationView_get_HiddenLinesStyle(This,Result)	\
    (This)->lpVtbl -> get_HiddenLinesStyle(This,Result)

#define IAssociationView_put_HiddenLinesStyle(This,Value)	\
    (This)->lpVtbl -> put_HiddenLinesStyle(This,Value)

#define IAssociationView_get_BreakLinesVisible(This,Result)	\
    (This)->lpVtbl -> get_BreakLinesVisible(This,Result)

#define IAssociationView_put_BreakLinesVisible(This,Value)	\
    (This)->lpVtbl -> put_BreakLinesVisible(This,Value)

#define IAssociationView_get_BreakLinesStyle(This,Result)	\
    (This)->lpVtbl -> get_BreakLinesStyle(This,Result)

#define IAssociationView_put_BreakLinesStyle(This,Value)	\
    (This)->lpVtbl -> put_BreakLinesStyle(This,Value)

#define IAssociationView_get_BendLinesVisible(This,Result)	\
    (This)->lpVtbl -> get_BendLinesVisible(This,Result)

#define IAssociationView_put_BendLinesVisible(This,Value)	\
    (This)->lpVtbl -> put_BendLinesVisible(This,Value)

#define IAssociationView_get_BendLinesStyle(This,Result)	\
    (This)->lpVtbl -> get_BendLinesStyle(This,Result)

#define IAssociationView_put_BendLinesStyle(This,Value)	\
    (This)->lpVtbl -> put_BendLinesStyle(This,Value)

#define IAssociationView_get_BaseView(This,Result)	\
    (This)->lpVtbl -> get_BaseView(This,Result)

#define IAssociationView_put_BaseView(This,NewVal)	\
    (This)->lpVtbl -> put_BaseView(This,NewVal)

#define IAssociationView_get_BaseObject(This,Result)	\
    (This)->lpVtbl -> get_BaseObject(This,Result)

#define IAssociationView_put_BaseObject(This,NewVal)	\
    (This)->lpVtbl -> put_BaseObject(This,NewVal)

#define IAssociationView_get_Local(This,Result)	\
    (This)->lpVtbl -> get_Local(This,Result)

#define IAssociationView_put_Local(This,Value)	\
    (This)->lpVtbl -> put_Local(This,Value)

#define IAssociationView_CreateLocalView(This,Contour,Result)	\
    (This)->lpVtbl -> CreateLocalView(This,Contour,Result)

#define IAssociationView_get_SameHatch(This,Result)	\
    (This)->lpVtbl -> get_SameHatch(This,Result)

#define IAssociationView_put_SameHatch(This,Value)	\
    (This)->lpVtbl -> put_SameHatch(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_SourceFileName_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_SourceFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_SourceFileName_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ BSTR Value);


void __RPC_STUB IAssociationView_put_SourceFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_ProjectionName_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_ProjectionName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_ProjectionName_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ BSTR Value);


void __RPC_STUB IAssociationView_put_ProjectionName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_ExplodedView_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_ExplodedView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_ExplodedView_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_ExplodedView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_DimensionLayoutScaling_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_DimensionLayoutScaling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_ProjectionLink_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_ProjectionLink_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_ProjectionLink_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_ProjectionLink_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_Section_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_Section_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_Section_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_Section_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_Unfold_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_Unfold_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_Unfold_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_Unfold_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_VisibleLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_VisibleLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_VisibleLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IAssociationView_put_VisibleLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_HiddenLines_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_HiddenLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_HiddenLines_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_HiddenLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_HiddenLinesVisible_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_HiddenLinesVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_HiddenLinesVisible_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_HiddenLinesVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_HiddenLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_HiddenLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_HiddenLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IAssociationView_put_HiddenLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_BreakLinesVisible_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_BreakLinesVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_BreakLinesVisible_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_BreakLinesVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_BreakLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_BreakLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_BreakLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IAssociationView_put_BreakLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_BendLinesVisible_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_BendLinesVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_BendLinesVisible_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_BendLinesVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_BendLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_BendLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_BendLinesStyle_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IAssociationView_put_BendLinesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_BaseView_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_BaseView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_BaseView_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ IView __RPC_FAR *NewVal);


void __RPC_STUB IAssociationView_put_BaseView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_BaseObject_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_BaseObject_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *NewVal);


void __RPC_STUB IAssociationView_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_Local_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_Local_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_Local_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_Local_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAssociationView_CreateLocalView_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Contour,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_CreateLocalView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationView_get_SameHatch_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationView_get_SameHatch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationView_put_SameHatch_Proxy( 
    IAssociationView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationView_put_SameHatch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAssociationView_INTERFACE_DEFINED__ */


#ifndef __ILayerGroups_INTERFACE_DEFINED__
#define __ILayerGroups_INTERFACE_DEFINED__

/* interface ILayerGroups */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayerGroups,0xDBFF6D98,0x8F79,0x453e,0x9B,0x8B,0x81,0xE4,0x0A,0x6D,0x80,0x27);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DBFF6D98-8F79-453e-9B8B-81E40A6D8027")
    ILayerGroups : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ IView __RPC_FAR *Owner,
            /* [in] */ VARIANT_BOOL Dinamic,
            /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Attach( 
            /* [in] */ ILayerGroup __RPC_FAR *PGroup,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Detach( 
            /* [in] */ ILayerGroup __RPC_FAR *PGroup,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayerGroupsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayerGroups __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayerGroups __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayerGroups __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayerGroups __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayerGroups __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayerGroups __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayerGroups __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILayerGroups __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILayerGroups __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ IView __RPC_FAR *Owner,
            /* [in] */ VARIANT_BOOL Dinamic,
            /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Attach )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ ILayerGroup __RPC_FAR *PGroup,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Detach )( 
            ILayerGroups __RPC_FAR * This,
            /* [in] */ ILayerGroup __RPC_FAR *PGroup,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ILayerGroupsVtbl;

    interface ILayerGroups
    {
        CONST_VTBL struct ILayerGroupsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILayerGroups_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILayerGroups_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILayerGroups_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILayerGroups_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILayerGroups_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILayerGroups_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILayerGroups_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILayerGroups_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayerGroups_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayerGroups_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayerGroups_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayerGroups_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILayerGroups_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILayerGroups_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ILayerGroups_Add(This,Owner,Dinamic,Result)	\
    (This)->lpVtbl -> Add(This,Owner,Dinamic,Result)

#define ILayerGroups_Attach(This,PGroup,Result)	\
    (This)->lpVtbl -> Attach(This,PGroup,Result)

#define ILayerGroups_Detach(This,PGroup,Result)	\
    (This)->lpVtbl -> Detach(This,PGroup,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroups_get_Item_Proxy( 
    ILayerGroups __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayerGroups_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerGroups_Add_Proxy( 
    ILayerGroups __RPC_FAR * This,
    /* [in] */ IView __RPC_FAR *Owner,
    /* [in] */ VARIANT_BOOL Dinamic,
    /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayerGroups_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerGroups_Attach_Proxy( 
    ILayerGroups __RPC_FAR * This,
    /* [in] */ ILayerGroup __RPC_FAR *PGroup,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILayerGroups_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerGroups_Detach_Proxy( 
    ILayerGroups __RPC_FAR * This,
    /* [in] */ ILayerGroup __RPC_FAR *PGroup,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILayerGroups_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayerGroups_INTERFACE_DEFINED__ */


#ifndef __ILayerGroup_INTERFACE_DEFINED__
#define __ILayerGroup_INTERFACE_DEFINED__

/* interface ILayerGroup */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayerGroup,0x265BBB5A,0x7B8A,0x4aa5,0xA0,0xBB,0xFF,0x64,0xD2,0x3B,0xE6,0x2B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("265BBB5A-7B8A-4aa5-A0BB-FF64D23BE62B")
    ILayerGroup : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OwnerGroup( 
            /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerGroups( 
            /* [retval][out] */ ILayerGroups __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layers( 
            /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerFilterConditions( 
            /* [retval][out] */ ILayerFilterConditions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLayerStates( 
            /* [in] */ VARIANT LayerIndex,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Visible,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Background,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Curent,
            /* [out] */ long __RPC_FAR *Color,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLayerStates( 
            /* [in] */ VARIANT LayerIndex,
            /* [in] */ VARIANT_BOOL Visible,
            /* [in] */ VARIANT_BOOL Background,
            /* [in] */ VARIANT_BOOL Curent,
            /* [in] */ long Color,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Current( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OwnerView( 
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OwnerView( 
            /* [defaultvalue][in] */ IView __RPC_FAR *PVal = 0) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UniqueId( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayerGroupVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayerGroup __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayerGroup __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayerGroup __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OwnerGroup )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerGroups )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ ILayerGroups __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Layers )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ILayerGroup __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerFilterConditions )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ ILayerFilterConditions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLayerStates )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ VARIANT LayerIndex,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Visible,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Background,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Curent,
            /* [out] */ long __RPC_FAR *Color,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLayerStates )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ VARIANT LayerIndex,
            /* [in] */ VARIANT_BOOL Visible,
            /* [in] */ VARIANT_BOOL Background,
            /* [in] */ VARIANT_BOOL Curent,
            /* [in] */ long Color,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Current )( 
            ILayerGroup __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OwnerView )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OwnerView )( 
            ILayerGroup __RPC_FAR * This,
            /* [defaultvalue][in] */ IView __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UniqueId )( 
            ILayerGroup __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } ILayerGroupVtbl;

    interface ILayerGroup
    {
        CONST_VTBL struct ILayerGroupVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILayerGroup_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILayerGroup_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILayerGroup_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILayerGroup_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILayerGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILayerGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILayerGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILayerGroup_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayerGroup_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayerGroup_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayerGroup_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayerGroup_get_OwnerGroup(This,PVal)	\
    (This)->lpVtbl -> get_OwnerGroup(This,PVal)

#define ILayerGroup_get_LayerGroups(This,Result)	\
    (This)->lpVtbl -> get_LayerGroups(This,Result)

#define ILayerGroup_get_Layers(This,Result)	\
    (This)->lpVtbl -> get_Layers(This,Result)

#define ILayerGroup_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define ILayerGroup_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ILayerGroup_get_LayerFilterConditions(This,PVal)	\
    (This)->lpVtbl -> get_LayerFilterConditions(This,PVal)

#define ILayerGroup_GetLayerStates(This,LayerIndex,Visible,Background,Curent,Color,PRes)	\
    (This)->lpVtbl -> GetLayerStates(This,LayerIndex,Visible,Background,Curent,Color,PRes)

#define ILayerGroup_SetLayerStates(This,LayerIndex,Visible,Background,Curent,Color,PRes)	\
    (This)->lpVtbl -> SetLayerStates(This,LayerIndex,Visible,Background,Curent,Color,PRes)

#define ILayerGroup_put_Current(This,NewVal)	\
    (This)->lpVtbl -> put_Current(This,NewVal)

#define ILayerGroup_get_Current(This,PVal)	\
    (This)->lpVtbl -> get_Current(This,PVal)

#define ILayerGroup_Delete(This,PVal)	\
    (This)->lpVtbl -> Delete(This,PVal)

#define ILayerGroup_get_OwnerView(This,PVal)	\
    (This)->lpVtbl -> get_OwnerView(This,PVal)

#define ILayerGroup_put_OwnerView(This,PVal)	\
    (This)->lpVtbl -> put_OwnerView(This,PVal)

#define ILayerGroup_get_UniqueId(This,PVal)	\
    (This)->lpVtbl -> get_UniqueId(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_OwnerGroup_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ ILayerGroup __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_get_OwnerGroup_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_LayerGroups_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ ILayerGroups __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayerGroup_get_LayerGroups_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_Layers_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ ILayers __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayerGroup_get_Layers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerGroup_put_Name_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB ILayerGroup_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_Name_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_LayerFilterConditions_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ ILayerFilterConditions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_get_LayerFilterConditions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerGroup_GetLayerStates_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [in] */ VARIANT LayerIndex,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Visible,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Background,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Curent,
    /* [out] */ long __RPC_FAR *Color,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ILayerGroup_GetLayerStates_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerGroup_SetLayerStates_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [in] */ VARIANT LayerIndex,
    /* [in] */ VARIANT_BOOL Visible,
    /* [in] */ VARIANT_BOOL Background,
    /* [in] */ VARIANT_BOOL Curent,
    /* [in] */ long Color,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ILayerGroup_SetLayerStates_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerGroup_put_Current_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILayerGroup_put_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_Current_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_get_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerGroup_Delete_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_OwnerView_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ IView __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_get_OwnerView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerGroup_put_OwnerView_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [defaultvalue][in] */ IView __RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_put_OwnerView_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerGroup_get_UniqueId_Proxy( 
    ILayerGroup __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILayerGroup_get_UniqueId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayerGroup_INTERFACE_DEFINED__ */


#ifndef __ILayers_INTERFACE_DEFINED__
#define __ILayers_INTERFACE_DEFINED__

/* interface ILayers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayers,0xF6DC2898,0xD596,0x4418,0xA2,0x1A,0xD1,0x5A,0xE0,0x7B,0x9A,0x40);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F6DC2898-D596-4418-A21A-D15AE07B9A40")
    ILayers : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layer( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayerByNumber( 
            /* [in] */ long Number,
            /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Attach( 
            /* [in] */ ILayer __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Detach( 
            /* [in] */ ILayer __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILayers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Layer )( 
            ILayers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerByNumber )( 
            ILayers __RPC_FAR * This,
            /* [in] */ long Number,
            /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILayers __RPC_FAR * This,
            /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Attach )( 
            ILayers __RPC_FAR * This,
            /* [in] */ ILayer __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Detach )( 
            ILayers __RPC_FAR * This,
            /* [in] */ ILayer __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ILayersVtbl;

    interface ILayers
    {
        CONST_VTBL struct ILayersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILayers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILayers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILayers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILayers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILayers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILayers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILayers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILayers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILayers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILayers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILayers_get_Layer(This,Index,Result)	\
    (This)->lpVtbl -> get_Layer(This,Index,Result)

#define ILayers_get_LayerByNumber(This,Number,Result)	\
    (This)->lpVtbl -> get_LayerByNumber(This,Number,Result)

#define ILayers_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#define ILayers_Attach(This,PVal,Result)	\
    (This)->lpVtbl -> Attach(This,PVal,Result)

#define ILayers_Detach(This,PVal,Result)	\
    (This)->lpVtbl -> Detach(This,PVal,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayers_get_Layer_Proxy( 
    ILayers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayers_get_Layer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayers_get_LayerByNumber_Proxy( 
    ILayers __RPC_FAR * This,
    /* [in] */ long Number,
    /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayers_get_LayerByNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayers_Add_Proxy( 
    ILayers __RPC_FAR * This,
    /* [retval][out] */ ILayer __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayers_Attach_Proxy( 
    ILayers __RPC_FAR * This,
    /* [in] */ ILayer __RPC_FAR *PVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILayers_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayers_Detach_Proxy( 
    ILayers __RPC_FAR * This,
    /* [in] */ ILayer __RPC_FAR *PVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILayers_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayers_INTERFACE_DEFINED__ */


#ifndef __ILayer_INTERFACE_DEFINED__
#define __ILayer_INTERFACE_DEFINED__

/* interface ILayer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayer,0x9AD76C38,0xCC48,0x4901,0xAE,0xE5,0x27,0xB4,0x8F,0x51,0x56,0x3C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9AD76C38-CC48-4901-AEE5-27B48F51563C")
    ILayer : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Background( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Background( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Current( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ILayer __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ILayer __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ILayer __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Background )( 
            ILayer __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Background )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            ILayer __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Current )( 
            ILayer __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            ILayer __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            ILayer __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectCount )( 
            ILayer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } ILayerVtbl;

    interface ILayer
    {
        CONST_VTBL struct ILayerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILayer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILayer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILayer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILayer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILayer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILayer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILayer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILayer_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayer_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayer_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayer_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayer_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ILayer_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ILayer_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ILayer_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ILayer_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ILayer_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ILayer_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ILayer_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ILayer_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ILayer_put_Name(This,NewVal)	\
    (This)->lpVtbl -> put_Name(This,NewVal)

#define ILayer_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ILayer_put_Background(This,NewVal)	\
    (This)->lpVtbl -> put_Background(This,NewVal)

#define ILayer_get_Background(This,PVal)	\
    (This)->lpVtbl -> get_Background(This,PVal)

#define ILayer_put_Visible(This,NewVal)	\
    (This)->lpVtbl -> put_Visible(This,NewVal)

#define ILayer_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define ILayer_put_Current(This,NewVal)	\
    (This)->lpVtbl -> put_Current(This,NewVal)

#define ILayer_get_Current(This,PVal)	\
    (This)->lpVtbl -> get_Current(This,PVal)

#define ILayer_put_Color(This,NewVal)	\
    (This)->lpVtbl -> put_Color(This,NewVal)

#define ILayer_get_Color(This,PVal)	\
    (This)->lpVtbl -> get_Color(This,PVal)

#define ILayer_put_Comment(This,NewVal)	\
    (This)->lpVtbl -> put_Comment(This,NewVal)

#define ILayer_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#define ILayer_get_ObjectCount(This,PVal)	\
    (This)->lpVtbl -> get_ObjectCount(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayer_put_Name_Proxy( 
    ILayer __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB ILayer_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_Name_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayer_put_Background_Proxy( 
    ILayer __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILayer_put_Background_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_Background_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_Background_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayer_put_Visible_Proxy( 
    ILayer __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILayer_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_Visible_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayer_put_Current_Proxy( 
    ILayer __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILayer_put_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_Current_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayer_put_Color_Proxy( 
    ILayer __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB ILayer_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_Color_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayer_put_Comment_Proxy( 
    ILayer __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB ILayer_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_Comment_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayer_get_ObjectCount_Proxy( 
    ILayer __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ILayer_get_ObjectCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayer_INTERFACE_DEFINED__ */


#ifndef __ILayerFilterCondition_INTERFACE_DEFINED__
#define __ILayerFilterCondition_INTERFACE_DEFINED__

/* interface ILayerFilterCondition */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayerFilterCondition,0xD743BC12,0x82A9,0x4e8f,0x85,0xB2,0x71,0x54,0xA3,0x56,0xAC,0xC0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D743BC12-82A9-4e8f-85B2-7154A356ACC0")
    ILayerFilterCondition : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Number( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Background( 
            /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Background( 
            /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HaveObjects( 
            /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HaveObjects( 
            /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayerFilterConditionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayerFilterCondition __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayerFilterCondition __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Number )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Background )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Background )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HaveObjects )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HaveObjects )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            ILayerFilterCondition __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } ILayerFilterConditionVtbl;

    interface ILayerFilterCondition
    {
        CONST_VTBL struct ILayerFilterConditionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILayerFilterCondition_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILayerFilterCondition_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILayerFilterCondition_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILayerFilterCondition_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILayerFilterCondition_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILayerFilterCondition_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILayerFilterCondition_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILayerFilterCondition_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayerFilterCondition_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayerFilterCondition_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayerFilterCondition_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayerFilterCondition_put_Number(This,NewVal)	\
    (This)->lpVtbl -> put_Number(This,NewVal)

#define ILayerFilterCondition_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define ILayerFilterCondition_put_Name(This,NewVal)	\
    (This)->lpVtbl -> put_Name(This,NewVal)

#define ILayerFilterCondition_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ILayerFilterCondition_put_Background(This,NewVal)	\
    (This)->lpVtbl -> put_Background(This,NewVal)

#define ILayerFilterCondition_get_Background(This,PVal)	\
    (This)->lpVtbl -> get_Background(This,PVal)

#define ILayerFilterCondition_put_Visible(This,NewVal)	\
    (This)->lpVtbl -> put_Visible(This,NewVal)

#define ILayerFilterCondition_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define ILayerFilterCondition_put_HaveObjects(This,NewVal)	\
    (This)->lpVtbl -> put_HaveObjects(This,NewVal)

#define ILayerFilterCondition_get_HaveObjects(This,PVal)	\
    (This)->lpVtbl -> get_HaveObjects(This,PVal)

#define ILayerFilterCondition_put_Color(This,NewVal)	\
    (This)->lpVtbl -> put_Color(This,NewVal)

#define ILayerFilterCondition_get_Color(This,PVal)	\
    (This)->lpVtbl -> get_Color(This,PVal)

#define ILayerFilterCondition_put_Comment(This,NewVal)	\
    (This)->lpVtbl -> put_Comment(This,NewVal)

#define ILayerFilterCondition_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_Number_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB ILayerFilterCondition_put_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_Number_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_Name_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB ILayerFilterCondition_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_Name_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_Background_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal);


void __RPC_STUB ILayerFilterCondition_put_Background_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_Background_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_Background_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_Visible_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal);


void __RPC_STUB ILayerFilterCondition_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_Visible_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_HaveObjects_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ /* external definition not present */ FilterCondotionStateEnum NewVal);


void __RPC_STUB ILayerFilterCondition_put_HaveObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_HaveObjects_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ FilterCondotionStateEnum __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_HaveObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_Color_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB ILayerFilterCondition_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_Color_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_put_Comment_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB ILayerFilterCondition_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterCondition_get_Comment_Proxy( 
    ILayerFilterCondition __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILayerFilterCondition_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayerFilterCondition_INTERFACE_DEFINED__ */


#ifndef __ILayerFilterConditions_INTERFACE_DEFINED__
#define __ILayerFilterConditions_INTERFACE_DEFINED__

/* interface ILayerFilterConditions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILayerFilterConditions,0xBCA22E27,0xAB60,0x4ba6,0x87,0xEE,0x92,0x15,0x8A,0xA6,0xD3,0x66);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BCA22E27-AB60-4ba6-87EE-92158AA6D366")
    ILayerFilterConditions : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayerFilterCondition __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILayerFilterCondition __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILayerFilterConditionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILayerFilterConditions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILayerFilterConditions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILayerFilterCondition __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILayerFilterConditions __RPC_FAR * This,
            /* [retval][out] */ ILayerFilterCondition __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ILayerFilterConditionsVtbl;

    interface ILayerFilterConditions
    {
        CONST_VTBL struct ILayerFilterConditionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILayerFilterConditions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILayerFilterConditions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILayerFilterConditions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILayerFilterConditions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILayerFilterConditions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILayerFilterConditions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILayerFilterConditions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILayerFilterConditions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILayerFilterConditions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILayerFilterConditions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILayerFilterConditions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILayerFilterConditions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILayerFilterConditions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILayerFilterConditions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ILayerFilterConditions_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILayerFilterConditions_get_Item_Proxy( 
    ILayerFilterConditions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILayerFilterCondition __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayerFilterConditions_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILayerFilterConditions_Add_Proxy( 
    ILayerFilterConditions __RPC_FAR * This,
    /* [retval][out] */ ILayerFilterCondition __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILayerFilterConditions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILayerFilterConditions_INTERFACE_DEFINED__ */


#ifndef __IViewDesignation_INTERFACE_DEFINED__
#define __IViewDesignation_INTERFACE_DEFINED__

/* interface IViewDesignation */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IViewDesignation,0x5F9580DA,0x915C,0x4c28,0x99,0x1D,0x5D,0xFF,0xE3,0xBF,0x3B,0x3C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5F9580DA-915C-4c28-991D-5DFFE3BF3B3C")
    IViewDesignation : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowName( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowName( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowUnfold( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowUnfold( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowScale( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowScale( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowTurn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowTurn( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowAngle( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowAngle( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowPage( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowPage( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowZone( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowZone( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Designation( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RefObject( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RefObject( 
            /* [in] */ VARIANT Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IViewDesignationVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IViewDesignation __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IViewDesignation __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IViewDesignation __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IViewDesignation __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IViewDesignation __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IViewDesignation __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IViewDesignation __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowName )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowName )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowUnfold )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowUnfold )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowScale )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowScale )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowTurn )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowTurn )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowAngle )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowAngle )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowPage )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowPage )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowZone )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowZone )( 
            IViewDesignation __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Designation )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RefObject )( 
            IViewDesignation __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RefObject )( 
            IViewDesignation __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        END_INTERFACE
    } IViewDesignationVtbl;

    interface IViewDesignation
    {
        CONST_VTBL struct IViewDesignationVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IViewDesignation_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IViewDesignation_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IViewDesignation_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IViewDesignation_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IViewDesignation_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IViewDesignation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IViewDesignation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IViewDesignation_get_ShowName(This,PVal)	\
    (This)->lpVtbl -> get_ShowName(This,PVal)

#define IViewDesignation_put_ShowName(This,Val)	\
    (This)->lpVtbl -> put_ShowName(This,Val)

#define IViewDesignation_get_ShowUnfold(This,PVal)	\
    (This)->lpVtbl -> get_ShowUnfold(This,PVal)

#define IViewDesignation_put_ShowUnfold(This,Val)	\
    (This)->lpVtbl -> put_ShowUnfold(This,Val)

#define IViewDesignation_get_ShowScale(This,PVal)	\
    (This)->lpVtbl -> get_ShowScale(This,PVal)

#define IViewDesignation_put_ShowScale(This,Val)	\
    (This)->lpVtbl -> put_ShowScale(This,Val)

#define IViewDesignation_get_ShowTurn(This,PVal)	\
    (This)->lpVtbl -> get_ShowTurn(This,PVal)

#define IViewDesignation_put_ShowTurn(This,Val)	\
    (This)->lpVtbl -> put_ShowTurn(This,Val)

#define IViewDesignation_get_ShowAngle(This,PVal)	\
    (This)->lpVtbl -> get_ShowAngle(This,PVal)

#define IViewDesignation_put_ShowAngle(This,Val)	\
    (This)->lpVtbl -> put_ShowAngle(This,Val)

#define IViewDesignation_get_ShowPage(This,PVal)	\
    (This)->lpVtbl -> get_ShowPage(This,PVal)

#define IViewDesignation_put_ShowPage(This,Val)	\
    (This)->lpVtbl -> put_ShowPage(This,Val)

#define IViewDesignation_get_ShowZone(This,PVal)	\
    (This)->lpVtbl -> get_ShowZone(This,PVal)

#define IViewDesignation_put_ShowZone(This,Val)	\
    (This)->lpVtbl -> put_ShowZone(This,Val)

#define IViewDesignation_get_Designation(This,PVal)	\
    (This)->lpVtbl -> get_Designation(This,PVal)

#define IViewDesignation_get_RefObject(This,PVal)	\
    (This)->lpVtbl -> get_RefObject(This,PVal)

#define IViewDesignation_put_RefObject(This,Val)	\
    (This)->lpVtbl -> put_RefObject(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowName_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowName_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowUnfold_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowUnfold_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowUnfold_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowUnfold_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowScale_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowScale_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowTurn_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowTurn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowTurn_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowTurn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowAngle_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowAngle_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowPage_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowPage_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_ShowZone_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_ShowZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_ShowZone_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB IViewDesignation_put_ShowZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_Designation_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_Designation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewDesignation_get_RefObject_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IViewDesignation_get_RefObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewDesignation_put_RefObject_Proxy( 
    IViewDesignation __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB IViewDesignation_put_RefObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IViewDesignation_INTERFACE_DEFINED__ */


#ifndef __IAssociationViewElements_INTERFACE_DEFINED__
#define __IAssociationViewElements_INTERFACE_DEFINED__

/* interface IAssociationViewElements */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAssociationViewElements,0xE4E42871,0xE799,0x4273,0x8E,0xDB,0xE5,0xEF,0x83,0xCC,0x66,0xC2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E4E42871-E799-4273-8EDB-E5EF83CC66C2")
    IAssociationViewElements : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectBodies( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectBodies( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectSurfaces( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectSurfaces( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HiddenObjectsVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HiddenObjectsVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectThreads( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectThreads( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectDimensions( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectDimensions( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectRoughs( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectRoughs( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectBases( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectBases( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectTolerances( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectTolerances( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectPositions( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectPositions( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectLeaders( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectLeaders( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectMarkLeaders( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectMarkLeaders( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectBrandLeaders( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectBrandLeaders( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectHiddenComponents( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectHiddenComponents( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectStandartElements( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectStandartElements( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectCurves( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectCurves( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectPoints( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectPoints( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectAllObjects( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectAllObjects( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProjectAllDesignations( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProjectAllDesignations( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAssociationViewElementsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAssociationViewElements __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAssociationViewElements __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectBodies )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectBodies )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectSurfaces )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectSurfaces )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HiddenObjectsVisible )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HiddenObjectsVisible )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectThreads )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectThreads )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectDimensions )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectDimensions )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectRoughs )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectRoughs )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectBases )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectBases )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectTolerances )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectTolerances )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectPositions )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectPositions )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectLeaders )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectLeaders )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectMarkLeaders )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectMarkLeaders )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectBrandLeaders )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectBrandLeaders )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectHiddenComponents )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectHiddenComponents )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectStandartElements )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectStandartElements )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectCurves )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectCurves )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectPoints )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectPoints )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectAllObjects )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectAllObjects )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProjectAllDesignations )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProjectAllDesignations )( 
            IAssociationViewElements __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IAssociationViewElementsVtbl;

    interface IAssociationViewElements
    {
        CONST_VTBL struct IAssociationViewElementsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAssociationViewElements_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAssociationViewElements_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAssociationViewElements_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAssociationViewElements_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAssociationViewElements_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAssociationViewElements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAssociationViewElements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAssociationViewElements_get_ProjectBodies(This,Result)	\
    (This)->lpVtbl -> get_ProjectBodies(This,Result)

#define IAssociationViewElements_put_ProjectBodies(This,Value)	\
    (This)->lpVtbl -> put_ProjectBodies(This,Value)

#define IAssociationViewElements_get_ProjectSurfaces(This,Result)	\
    (This)->lpVtbl -> get_ProjectSurfaces(This,Result)

#define IAssociationViewElements_put_ProjectSurfaces(This,Value)	\
    (This)->lpVtbl -> put_ProjectSurfaces(This,Value)

#define IAssociationViewElements_get_HiddenObjectsVisible(This,Result)	\
    (This)->lpVtbl -> get_HiddenObjectsVisible(This,Result)

#define IAssociationViewElements_put_HiddenObjectsVisible(This,Value)	\
    (This)->lpVtbl -> put_HiddenObjectsVisible(This,Value)

#define IAssociationViewElements_get_ProjectThreads(This,Result)	\
    (This)->lpVtbl -> get_ProjectThreads(This,Result)

#define IAssociationViewElements_put_ProjectThreads(This,Value)	\
    (This)->lpVtbl -> put_ProjectThreads(This,Value)

#define IAssociationViewElements_get_ProjectDimensions(This,Result)	\
    (This)->lpVtbl -> get_ProjectDimensions(This,Result)

#define IAssociationViewElements_put_ProjectDimensions(This,Value)	\
    (This)->lpVtbl -> put_ProjectDimensions(This,Value)

#define IAssociationViewElements_get_ProjectRoughs(This,Result)	\
    (This)->lpVtbl -> get_ProjectRoughs(This,Result)

#define IAssociationViewElements_put_ProjectRoughs(This,Value)	\
    (This)->lpVtbl -> put_ProjectRoughs(This,Value)

#define IAssociationViewElements_get_ProjectBases(This,Result)	\
    (This)->lpVtbl -> get_ProjectBases(This,Result)

#define IAssociationViewElements_put_ProjectBases(This,Value)	\
    (This)->lpVtbl -> put_ProjectBases(This,Value)

#define IAssociationViewElements_get_ProjectTolerances(This,Result)	\
    (This)->lpVtbl -> get_ProjectTolerances(This,Result)

#define IAssociationViewElements_put_ProjectTolerances(This,Value)	\
    (This)->lpVtbl -> put_ProjectTolerances(This,Value)

#define IAssociationViewElements_get_ProjectPositions(This,Result)	\
    (This)->lpVtbl -> get_ProjectPositions(This,Result)

#define IAssociationViewElements_put_ProjectPositions(This,Value)	\
    (This)->lpVtbl -> put_ProjectPositions(This,Value)

#define IAssociationViewElements_get_ProjectLeaders(This,Result)	\
    (This)->lpVtbl -> get_ProjectLeaders(This,Result)

#define IAssociationViewElements_put_ProjectLeaders(This,Value)	\
    (This)->lpVtbl -> put_ProjectLeaders(This,Value)

#define IAssociationViewElements_get_ProjectMarkLeaders(This,Result)	\
    (This)->lpVtbl -> get_ProjectMarkLeaders(This,Result)

#define IAssociationViewElements_put_ProjectMarkLeaders(This,Value)	\
    (This)->lpVtbl -> put_ProjectMarkLeaders(This,Value)

#define IAssociationViewElements_get_ProjectBrandLeaders(This,Result)	\
    (This)->lpVtbl -> get_ProjectBrandLeaders(This,Result)

#define IAssociationViewElements_put_ProjectBrandLeaders(This,Value)	\
    (This)->lpVtbl -> put_ProjectBrandLeaders(This,Value)

#define IAssociationViewElements_get_ProjectHiddenComponents(This,Result)	\
    (This)->lpVtbl -> get_ProjectHiddenComponents(This,Result)

#define IAssociationViewElements_put_ProjectHiddenComponents(This,Value)	\
    (This)->lpVtbl -> put_ProjectHiddenComponents(This,Value)

#define IAssociationViewElements_get_ProjectStandartElements(This,Result)	\
    (This)->lpVtbl -> get_ProjectStandartElements(This,Result)

#define IAssociationViewElements_put_ProjectStandartElements(This,Value)	\
    (This)->lpVtbl -> put_ProjectStandartElements(This,Value)

#define IAssociationViewElements_get_ProjectCurves(This,Result)	\
    (This)->lpVtbl -> get_ProjectCurves(This,Result)

#define IAssociationViewElements_put_ProjectCurves(This,Value)	\
    (This)->lpVtbl -> put_ProjectCurves(This,Value)

#define IAssociationViewElements_get_ProjectPoints(This,Result)	\
    (This)->lpVtbl -> get_ProjectPoints(This,Result)

#define IAssociationViewElements_put_ProjectPoints(This,Value)	\
    (This)->lpVtbl -> put_ProjectPoints(This,Value)

#define IAssociationViewElements_get_ProjectAllObjects(This,Result)	\
    (This)->lpVtbl -> get_ProjectAllObjects(This,Result)

#define IAssociationViewElements_put_ProjectAllObjects(This,Value)	\
    (This)->lpVtbl -> put_ProjectAllObjects(This,Value)

#define IAssociationViewElements_get_ProjectAllDesignations(This,Result)	\
    (This)->lpVtbl -> get_ProjectAllDesignations(This,Result)

#define IAssociationViewElements_put_ProjectAllDesignations(This,Value)	\
    (This)->lpVtbl -> put_ProjectAllDesignations(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectBodies_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectBodies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectBodies_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectBodies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectSurfaces_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectSurfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectSurfaces_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectSurfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_HiddenObjectsVisible_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_HiddenObjectsVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_HiddenObjectsVisible_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_HiddenObjectsVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectThreads_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectThreads_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectThreads_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectThreads_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectDimensions_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectDimensions_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectRoughs_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectRoughs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectRoughs_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectRoughs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectBases_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectBases_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectBases_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectBases_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectTolerances_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectTolerances_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectTolerances_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectTolerances_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectPositions_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectPositions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectPositions_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectPositions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectLeaders_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectLeaders_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectMarkLeaders_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectMarkLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectMarkLeaders_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectMarkLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectBrandLeaders_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectBrandLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectBrandLeaders_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectBrandLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectHiddenComponents_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectHiddenComponents_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectHiddenComponents_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectHiddenComponents_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectStandartElements_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectStandartElements_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectStandartElements_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectStandartElements_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectCurves_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectCurves_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectCurves_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectCurves_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectPoints_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectPoints_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectAllObjects_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectAllObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectAllObjects_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectAllObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_get_ProjectAllDesignations_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAssociationViewElements_get_ProjectAllDesignations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAssociationViewElements_put_ProjectAllDesignations_Proxy( 
    IAssociationViewElements __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IAssociationViewElements_put_ProjectAllDesignations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAssociationViewElements_INTERFACE_DEFINED__ */


#ifndef __IBreakViewParam_INTERFACE_DEFINED__
#define __IBreakViewParam_INTERFACE_DEFINED__

/* interface IBreakViewParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBreakViewParam,0x1B94C65D,0x3473,0x4ff2,0xB1,0x85,0x0B,0x1C,0x2C,0x98,0xFC,0xAE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1B94C65D-3473-4ff2-B185-0B1C2C98FCAE")
    IBreakViewParam : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBreakLine( 
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [in] */ double Angle,
            /* [retval][out] */ long __RPC_FAR *Index) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteBreakLine( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteAllBreakLines( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBreakLinePosition( 
            /* [in] */ long Index,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBreakLinePosition( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X1,
            /* [out] */ double __RPC_FAR *Y1,
            /* [out] */ double __RPC_FAR *X2,
            /* [out] */ double __RPC_FAR *Y2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBreakLineParams( 
            /* [in] */ long Index,
            /* [in] */ double Angle,
            /* [in] */ double Clearance,
            /* [in] */ /* external definition not present */ ksBreakLineTypeEnum BreakLineType,
            /* [in] */ double Amplitude,
            /* [in] */ double MaxAmplitude,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBreakLineParams( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ double __RPC_FAR *Clearance,
            /* [out] */ /* external definition not present */ ksBreakLineTypeEnum __RPC_FAR *BreakLineType,
            /* [out] */ double __RPC_FAR *Amplitude,
            /* [out] */ double __RPC_FAR *MaxAmplitude,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreaksCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreaksVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreaksVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBreakViewParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBreakViewParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBreakViewParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBreakViewParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBreakLine )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [in] */ double Angle,
            /* [retval][out] */ long __RPC_FAR *Index);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteBreakLine )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteAllBreakLines )( 
            IBreakViewParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBreakLinePosition )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBreakLinePosition )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X1,
            /* [out] */ double __RPC_FAR *Y1,
            /* [out] */ double __RPC_FAR *X2,
            /* [out] */ double __RPC_FAR *Y2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBreakLineParams )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double Angle,
            /* [in] */ double Clearance,
            /* [in] */ /* external definition not present */ ksBreakLineTypeEnum BreakLineType,
            /* [in] */ double Amplitude,
            /* [in] */ double MaxAmplitude,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBreakLineParams )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ double __RPC_FAR *Clearance,
            /* [out] */ /* external definition not present */ ksBreakLineTypeEnum __RPC_FAR *BreakLineType,
            /* [out] */ double __RPC_FAR *Amplitude,
            /* [out] */ double __RPC_FAR *MaxAmplitude,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreaksCount )( 
            IBreakViewParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreaksVisible )( 
            IBreakViewParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreaksVisible )( 
            IBreakViewParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IBreakViewParamVtbl;

    interface IBreakViewParam
    {
        CONST_VTBL struct IBreakViewParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBreakViewParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBreakViewParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBreakViewParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBreakViewParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBreakViewParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBreakViewParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBreakViewParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBreakViewParam_AddBreakLine(This,X1,Y1,X2,Y2,Angle,Index)	\
    (This)->lpVtbl -> AddBreakLine(This,X1,Y1,X2,Y2,Angle,Index)

#define IBreakViewParam_DeleteBreakLine(This,Index,Result)	\
    (This)->lpVtbl -> DeleteBreakLine(This,Index,Result)

#define IBreakViewParam_DeleteAllBreakLines(This,Result)	\
    (This)->lpVtbl -> DeleteAllBreakLines(This,Result)

#define IBreakViewParam_SetBreakLinePosition(This,Index,X1,Y1,X2,Y2,Result)	\
    (This)->lpVtbl -> SetBreakLinePosition(This,Index,X1,Y1,X2,Y2,Result)

#define IBreakViewParam_GetBreakLinePosition(This,Index,X1,Y1,X2,Y2,Result)	\
    (This)->lpVtbl -> GetBreakLinePosition(This,Index,X1,Y1,X2,Y2,Result)

#define IBreakViewParam_SetBreakLineParams(This,Index,Angle,Clearance,BreakLineType,Amplitude,MaxAmplitude,Result)	\
    (This)->lpVtbl -> SetBreakLineParams(This,Index,Angle,Clearance,BreakLineType,Amplitude,MaxAmplitude,Result)

#define IBreakViewParam_GetBreakLineParams(This,Index,Angle,Clearance,BreakLineType,Amplitude,MaxAmplitude,Result)	\
    (This)->lpVtbl -> GetBreakLineParams(This,Index,Angle,Clearance,BreakLineType,Amplitude,MaxAmplitude,Result)

#define IBreakViewParam_get_BreaksCount(This,Result)	\
    (This)->lpVtbl -> get_BreaksCount(This,Result)

#define IBreakViewParam_get_BreaksVisible(This,Result)	\
    (This)->lpVtbl -> get_BreaksVisible(This,Result)

#define IBreakViewParam_put_BreaksVisible(This,Value)	\
    (This)->lpVtbl -> put_BreaksVisible(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_AddBreakLine_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ double X1,
    /* [in] */ double Y1,
    /* [in] */ double X2,
    /* [in] */ double Y2,
    /* [in] */ double Angle,
    /* [retval][out] */ long __RPC_FAR *Index);


void __RPC_STUB IBreakViewParam_AddBreakLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_DeleteBreakLine_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_DeleteBreakLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_DeleteAllBreakLines_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_DeleteAllBreakLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_SetBreakLinePosition_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X1,
    /* [in] */ double Y1,
    /* [in] */ double X2,
    /* [in] */ double Y2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_SetBreakLinePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_GetBreakLinePosition_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *X1,
    /* [out] */ double __RPC_FAR *Y1,
    /* [out] */ double __RPC_FAR *X2,
    /* [out] */ double __RPC_FAR *Y2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_GetBreakLinePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_SetBreakLineParams_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double Angle,
    /* [in] */ double Clearance,
    /* [in] */ /* external definition not present */ ksBreakLineTypeEnum BreakLineType,
    /* [in] */ double Amplitude,
    /* [in] */ double MaxAmplitude,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_SetBreakLineParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_GetBreakLineParams_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *Angle,
    /* [out] */ double __RPC_FAR *Clearance,
    /* [out] */ /* external definition not present */ ksBreakLineTypeEnum __RPC_FAR *BreakLineType,
    /* [out] */ double __RPC_FAR *Amplitude,
    /* [out] */ double __RPC_FAR *MaxAmplitude,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_GetBreakLineParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_get_BreaksCount_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_get_BreaksCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_get_BreaksVisible_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBreakViewParam_get_BreaksVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakViewParam_put_BreaksVisible_Proxy( 
    IBreakViewParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBreakViewParam_put_BreaksVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBreakViewParam_INTERFACE_DEFINED__ */


#ifndef __ICutViewParam_INTERFACE_DEFINED__
#define __ICutViewParam_INTERFACE_DEFINED__

/* interface ICutViewParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICutViewParam,0xD4C8B5AF,0xB2A1,0x4e07,0x9C,0xD0,0xA1,0xFC,0x5B,0x0B,0xC1,0xE1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D4C8B5AF-B2A1-4e07-9CD0-A1FC5B0BC1E1")
    ICutViewParam : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddCut( 
            /* [in] */ BSTR Name,
            /* [in] */ long Number,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ VARIANT_BOOL ModelCut,
            /* [in] */ IDrawingObject __RPC_FAR *Contour,
            /* [in] */ IView __RPC_FAR *View,
            /* [retval][out] */ long __RPC_FAR *Index) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteCut( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteAllCuts( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCutPlanePosition( 
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCutPlanePosition( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCutParams( 
            /* [in] */ long Index,
            /* [in] */ BSTR Name,
            /* [in] */ long Number,
            /* [in] */ VARIANT_BOOL ModelCut,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCutParams( 
            /* [in] */ long Index,
            /* [out] */ BSTR __RPC_FAR *Name,
            /* [out] */ long __RPC_FAR *Number,
            /* [out] */ VARIANT_BOOL __RPC_FAR *ModelCut,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Contour) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LocalCut( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LocalCut( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HatchParam( 
            /* [in] */ long Index,
            /* [retval][out] */ IHatchParam __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICutViewParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICutViewParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICutViewParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICutViewParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddCut )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ long Number,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ VARIANT_BOOL ModelCut,
            /* [in] */ IDrawingObject __RPC_FAR *Contour,
            /* [in] */ IView __RPC_FAR *View,
            /* [retval][out] */ long __RPC_FAR *Index);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteCut )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteAllCuts )( 
            ICutViewParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCutPlanePosition )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCutPlanePosition )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCutParams )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ BSTR Name,
            /* [in] */ long Number,
            /* [in] */ VARIANT_BOOL ModelCut,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCutParams )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ BSTR __RPC_FAR *Name,
            /* [out] */ long __RPC_FAR *Number,
            /* [out] */ VARIANT_BOOL __RPC_FAR *ModelCut,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Contour);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutsCount )( 
            ICutViewParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LocalCut )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LocalCut )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HatchParam )( 
            ICutViewParam __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ IHatchParam __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ICutViewParamVtbl;

    interface ICutViewParam
    {
        CONST_VTBL struct ICutViewParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICutViewParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICutViewParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICutViewParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICutViewParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICutViewParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICutViewParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICutViewParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICutViewParam_AddCut(This,Name,Number,X,Y,ModelCut,Contour,View,Index)	\
    (This)->lpVtbl -> AddCut(This,Name,Number,X,Y,ModelCut,Contour,View,Index)

#define ICutViewParam_DeleteCut(This,Index,Result)	\
    (This)->lpVtbl -> DeleteCut(This,Index,Result)

#define ICutViewParam_DeleteAllCuts(This,Result)	\
    (This)->lpVtbl -> DeleteAllCuts(This,Result)

#define ICutViewParam_SetCutPlanePosition(This,Index,X,Y,Result)	\
    (This)->lpVtbl -> SetCutPlanePosition(This,Index,X,Y,Result)

#define ICutViewParam_GetCutPlanePosition(This,Index,X,Y,Result)	\
    (This)->lpVtbl -> GetCutPlanePosition(This,Index,X,Y,Result)

#define ICutViewParam_SetCutParams(This,Index,Name,Number,ModelCut,Result)	\
    (This)->lpVtbl -> SetCutParams(This,Index,Name,Number,ModelCut,Result)

#define ICutViewParam_GetCutParams(This,Index,Name,Number,ModelCut,Contour)	\
    (This)->lpVtbl -> GetCutParams(This,Index,Name,Number,ModelCut,Contour)

#define ICutViewParam_get_CutsCount(This,Result)	\
    (This)->lpVtbl -> get_CutsCount(This,Result)

#define ICutViewParam_get_LocalCut(This,Index,Result)	\
    (This)->lpVtbl -> get_LocalCut(This,Index,Result)

#define ICutViewParam_put_LocalCut(This,Index,Value)	\
    (This)->lpVtbl -> put_LocalCut(This,Index,Value)

#define ICutViewParam_get_HatchParam(This,Index,Result)	\
    (This)->lpVtbl -> get_HatchParam(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_AddCut_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ long Number,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ VARIANT_BOOL ModelCut,
    /* [in] */ IDrawingObject __RPC_FAR *Contour,
    /* [in] */ IView __RPC_FAR *View,
    /* [retval][out] */ long __RPC_FAR *Index);


void __RPC_STUB ICutViewParam_AddCut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_DeleteCut_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_DeleteCut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_DeleteAllCuts_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_DeleteAllCuts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_SetCutPlanePosition_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_SetCutPlanePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_GetCutPlanePosition_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_GetCutPlanePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_SetCutParams_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ BSTR Name,
    /* [in] */ long Number,
    /* [in] */ VARIANT_BOOL ModelCut,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_SetCutParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutViewParam_GetCutParams_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ BSTR __RPC_FAR *Name,
    /* [out] */ long __RPC_FAR *Number,
    /* [out] */ VARIANT_BOOL __RPC_FAR *ModelCut,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Contour);


void __RPC_STUB ICutViewParam_GetCutParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutViewParam_get_CutsCount_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_get_CutsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutViewParam_get_LocalCut_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutViewParam_get_LocalCut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutViewParam_put_LocalCut_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICutViewParam_put_LocalCut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutViewParam_get_HatchParam_Proxy( 
    ICutViewParam __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ IHatchParam __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICutViewParam_get_HatchParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICutViewParam_INTERFACE_DEFINED__ */


#ifndef __ILibraryManager_INTERFACE_DEFINED__
#define __ILibraryManager_INTERFACE_DEFINED__

/* interface ILibraryManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILibraryManager,0x53CDC510,0x99EA,0x4736,0x85,0x42,0x19,0x4F,0x4D,0x8F,0xB3,0x2B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("53CDC510-99EA-4736-8542-194F4D8FB32B")
    ILibraryManager : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProceduresLibraries( 
            /* [retval][out] */ IProceduresLibraries __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FragmentsLibraries( 
            /* [retval][out] */ IInsertsLibraries __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelsLibraries( 
            /* [retval][out] */ IInsertsLibraries __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Layout( 
            /* [retval][out] */ /* external definition not present */ PropertyManagerLayout __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveFolder( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveFolder( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveFolderComment( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveFolderComment( 
            /* [in] */ VARIANT Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddFolder( 
            /* [in] */ BSTR PathFolder) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveFolder( 
            /* [in] */ BSTR PathFolder) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SystemControlStartLibrary( 
            /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentLibrary( 
            /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCurrentLibrary( 
            /* [in] */ IProceduresLibrary __RPC_FAR *pVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SystemControlStartResult( 
            /* [retval][out] */ /* external definition not present */ ksSystemControlStartEnum __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILibraryManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILibraryManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILibraryManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILibraryManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProceduresLibraries )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IProceduresLibraries __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FragmentsLibraries )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IInsertsLibraries __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelsLibraries )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IInsertsLibraries __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Layout )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyManagerLayout __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveFolder )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveFolder )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveFolderComment )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ActiveFolderComment )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddFolder )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ BSTR PathFolder);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveFolder )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ BSTR PathFolder);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SystemControlStartLibrary )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentLibrary )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCurrentLibrary )( 
            ILibraryManager __RPC_FAR * This,
            /* [in] */ IProceduresLibrary __RPC_FAR *pVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SystemControlStartResult )( 
            ILibraryManager __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSystemControlStartEnum __RPC_FAR *pVal);
        
        END_INTERFACE
    } ILibraryManagerVtbl;

    interface ILibraryManager
    {
        CONST_VTBL struct ILibraryManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILibraryManager_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILibraryManager_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILibraryManager_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILibraryManager_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILibraryManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILibraryManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILibraryManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILibraryManager_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILibraryManager_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILibraryManager_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILibraryManager_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILibraryManager_get_ProceduresLibraries(This,Result)	\
    (This)->lpVtbl -> get_ProceduresLibraries(This,Result)

#define ILibraryManager_get_FragmentsLibraries(This,Result)	\
    (This)->lpVtbl -> get_FragmentsLibraries(This,Result)

#define ILibraryManager_get_ModelsLibraries(This,Result)	\
    (This)->lpVtbl -> get_ModelsLibraries(This,Result)

#define ILibraryManager_get_Visible(This,pVal)	\
    (This)->lpVtbl -> get_Visible(This,pVal)

#define ILibraryManager_put_Visible(This,Val)	\
    (This)->lpVtbl -> put_Visible(This,Val)

#define ILibraryManager_get_Layout(This,PVal)	\
    (This)->lpVtbl -> get_Layout(This,PVal)

#define ILibraryManager_get_ActiveFolder(This,pVal)	\
    (This)->lpVtbl -> get_ActiveFolder(This,pVal)

#define ILibraryManager_put_ActiveFolder(This,Val)	\
    (This)->lpVtbl -> put_ActiveFolder(This,Val)

#define ILibraryManager_get_ActiveFolderComment(This,pVal)	\
    (This)->lpVtbl -> get_ActiveFolderComment(This,pVal)

#define ILibraryManager_put_ActiveFolderComment(This,Val)	\
    (This)->lpVtbl -> put_ActiveFolderComment(This,Val)

#define ILibraryManager_AddFolder(This,PathFolder)	\
    (This)->lpVtbl -> AddFolder(This,PathFolder)

#define ILibraryManager_RemoveFolder(This,PathFolder)	\
    (This)->lpVtbl -> RemoveFolder(This,PathFolder)

#define ILibraryManager_get_SystemControlStartLibrary(This,pVal)	\
    (This)->lpVtbl -> get_SystemControlStartLibrary(This,pVal)

#define ILibraryManager_get_CurrentLibrary(This,pVal)	\
    (This)->lpVtbl -> get_CurrentLibrary(This,pVal)

#define ILibraryManager_SetCurrentLibrary(This,pVal,result)	\
    (This)->lpVtbl -> SetCurrentLibrary(This,pVal,result)

#define ILibraryManager_get_SystemControlStartResult(This,pVal)	\
    (This)->lpVtbl -> get_SystemControlStartResult(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_ProceduresLibraries_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ IProceduresLibraries __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILibraryManager_get_ProceduresLibraries_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_FragmentsLibraries_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ IInsertsLibraries __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILibraryManager_get_FragmentsLibraries_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_ModelsLibraries_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ IInsertsLibraries __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILibraryManager_get_ModelsLibraries_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_Visible_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ILibraryManager_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILibraryManager_put_Visible_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ILibraryManager_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_Layout_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ PropertyManagerLayout __RPC_FAR *PVal);


void __RPC_STUB ILibraryManager_get_Layout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_ActiveFolder_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ILibraryManager_get_ActiveFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILibraryManager_put_ActiveFolder_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ILibraryManager_put_ActiveFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_ActiveFolderComment_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB ILibraryManager_get_ActiveFolderComment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILibraryManager_put_ActiveFolderComment_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB ILibraryManager_put_ActiveFolderComment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibraryManager_AddFolder_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [in] */ BSTR PathFolder);


void __RPC_STUB ILibraryManager_AddFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibraryManager_RemoveFolder_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [in] */ BSTR PathFolder);


void __RPC_STUB ILibraryManager_RemoveFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_SystemControlStartLibrary_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ILibraryManager_get_SystemControlStartLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_CurrentLibrary_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ILibraryManager_get_CurrentLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibraryManager_SetCurrentLibrary_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [in] */ IProceduresLibrary __RPC_FAR *pVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB ILibraryManager_SetCurrentLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibraryManager_get_SystemControlStartResult_Proxy( 
    ILibraryManager __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSystemControlStartEnum __RPC_FAR *pVal);


void __RPC_STUB ILibraryManager_get_SystemControlStartResult_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILibraryManager_INTERFACE_DEFINED__ */


#ifndef __ILibrary_INTERFACE_DEFINED__
#define __ILibrary_INTERFACE_DEFINED__

/* interface ILibrary */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILibrary,0x9D6E9AE1,0x7DDF,0x4354,0xB8,0xD0,0xE1,0x20,0x23,0xB1,0x86,0xFA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9D6E9AE1-7DDF-4354-B8D0-E12023B186FA")
    ILibrary : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryManagerFolder( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Attach( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Attach( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryType( 
            /* [retval][out] */ /* external definition not present */ ksLibraryTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PathName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Enable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Execute( 
            /* [in] */ long Command,
            /* [in] */ LPDISPATCH External,
            /* [in] */ VARIANT_BOOL Post,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILibraryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILibrary __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILibrary __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILibrary __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILibrary __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILibrary __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILibrary __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILibrary __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryManagerFolder )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attach )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attach )( 
            ILibrary __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryType )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLibraryTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            ILibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
            ILibrary __RPC_FAR * This,
            /* [in] */ long Command,
            /* [in] */ LPDISPATCH External,
            /* [in] */ VARIANT_BOOL Post,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ILibraryVtbl;

    interface ILibrary
    {
        CONST_VTBL struct ILibraryVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILibrary_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILibrary_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILibrary_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILibrary_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILibrary_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILibrary_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILibrary_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILibrary_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILibrary_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILibrary_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILibrary_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILibrary_get_LibraryManagerFolder(This,PVal)	\
    (This)->lpVtbl -> get_LibraryManagerFolder(This,PVal)

#define ILibrary_get_Attach(This,PVal)	\
    (This)->lpVtbl -> get_Attach(This,PVal)

#define ILibrary_put_Attach(This,Val)	\
    (This)->lpVtbl -> put_Attach(This,Val)

#define ILibrary_get_LibraryType(This,PVal)	\
    (This)->lpVtbl -> get_LibraryType(This,PVal)

#define ILibrary_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ILibrary_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define ILibrary_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define ILibrary_Execute(This,Command,External,Post,PVal)	\
    (This)->lpVtbl -> Execute(This,Command,External,Post,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibrary_get_LibraryManagerFolder_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILibrary_get_LibraryManagerFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibrary_get_Attach_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILibrary_get_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILibrary_put_Attach_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ILibrary_put_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibrary_get_LibraryType_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLibraryTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ILibrary_get_LibraryType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibrary_get_Name_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILibrary_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibrary_get_PathName_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ILibrary_get_PathName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibrary_get_Enable_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILibrary_get_Enable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibrary_Execute_Proxy( 
    ILibrary __RPC_FAR * This,
    /* [in] */ long Command,
    /* [in] */ LPDISPATCH External,
    /* [in] */ VARIANT_BOOL Post,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILibrary_Execute_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILibrary_INTERFACE_DEFINED__ */


#ifndef __IProceduresLibrary_INTERFACE_DEFINED__
#define __IProceduresLibrary_INTERFACE_DEFINED__

/* interface IProceduresLibrary */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProceduresLibrary,0x1AECE59E,0xDE4C,0x4fb9,0xB6,0x2B,0x79,0x67,0x57,0x3A,0xD3,0xB1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1AECE59E-DE4C-4fb9-B62B-7967573AD3B1")
    IProceduresLibrary : public ILibrary
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ /* external definition not present */ ksLibraryStyleEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ /* external definition not present */ ksLibraryStyleEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Procedures( 
            /* [retval][out] */ IProcedures __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentCommand( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SystemControlStop( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SystemControlStart( 
            /* [in] */ BSTR menuCommand,
            /* [retval][out] */ /* external definition not present */ ksSystemControlStartEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UniqueId( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Executable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AddIns( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExternalInterface( 
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProceduresLibraryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProceduresLibrary __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProceduresLibrary __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryManagerFolder )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attach )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attach )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryType )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLibraryTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ long Command,
            /* [in] */ LPDISPATCH External,
            /* [in] */ VARIANT_BOOL Post,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLibraryStyleEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksLibraryStyleEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Procedures )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ IProcedures __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentCommand )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SystemControlStop )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SystemControlStart )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [in] */ BSTR menuCommand,
            /* [retval][out] */ /* external definition not present */ ksSystemControlStartEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UniqueId )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Executable )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AddIns )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExternalInterface )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryName )( 
            IProceduresLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } IProceduresLibraryVtbl;

    interface IProceduresLibrary
    {
        CONST_VTBL struct IProceduresLibraryVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IProceduresLibrary_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IProceduresLibrary_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IProceduresLibrary_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IProceduresLibrary_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IProceduresLibrary_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IProceduresLibrary_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IProceduresLibrary_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IProceduresLibrary_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProceduresLibrary_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProceduresLibrary_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProceduresLibrary_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProceduresLibrary_get_LibraryManagerFolder(This,PVal)	\
    (This)->lpVtbl -> get_LibraryManagerFolder(This,PVal)

#define IProceduresLibrary_get_Attach(This,PVal)	\
    (This)->lpVtbl -> get_Attach(This,PVal)

#define IProceduresLibrary_put_Attach(This,Val)	\
    (This)->lpVtbl -> put_Attach(This,Val)

#define IProceduresLibrary_get_LibraryType(This,PVal)	\
    (This)->lpVtbl -> get_LibraryType(This,PVal)

#define IProceduresLibrary_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IProceduresLibrary_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IProceduresLibrary_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IProceduresLibrary_Execute(This,Command,External,Post,PVal)	\
    (This)->lpVtbl -> Execute(This,Command,External,Post,PVal)


#define IProceduresLibrary_get_Style(This,PVal)	\
    (This)->lpVtbl -> get_Style(This,PVal)

#define IProceduresLibrary_put_Style(This,Val)	\
    (This)->lpVtbl -> put_Style(This,Val)

#define IProceduresLibrary_get_Procedures(This,PVal)	\
    (This)->lpVtbl -> get_Procedures(This,PVal)

#define IProceduresLibrary_get_CurrentCommand(This,PVal)	\
    (This)->lpVtbl -> get_CurrentCommand(This,PVal)

#define IProceduresLibrary_SystemControlStop(This,PVal)	\
    (This)->lpVtbl -> SystemControlStop(This,PVal)

#define IProceduresLibrary_SystemControlStart(This,menuCommand,PVal)	\
    (This)->lpVtbl -> SystemControlStart(This,menuCommand,PVal)

#define IProceduresLibrary_get_UniqueId(This,pVal)	\
    (This)->lpVtbl -> get_UniqueId(This,pVal)

#define IProceduresLibrary_get_Executable(This,pVal)	\
    (This)->lpVtbl -> get_Executable(This,pVal)

#define IProceduresLibrary_get_AddIns(This,pVal)	\
    (This)->lpVtbl -> get_AddIns(This,pVal)

#define IProceduresLibrary_get_ExternalInterface(This,pVal)	\
    (This)->lpVtbl -> get_ExternalInterface(This,pVal)

#define IProceduresLibrary_get_LibraryName(This,PVal)	\
    (This)->lpVtbl -> get_LibraryName(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_Style_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLibraryStyleEnum __RPC_FAR *PVal);


void __RPC_STUB IProceduresLibrary_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_put_Style_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksLibraryStyleEnum Val);


void __RPC_STUB IProceduresLibrary_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_Procedures_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ IProcedures __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IProceduresLibrary_get_Procedures_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_CurrentCommand_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IProceduresLibrary_get_CurrentCommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_SystemControlStop_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProceduresLibrary_SystemControlStop_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_SystemControlStart_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [in] */ BSTR menuCommand,
    /* [retval][out] */ /* external definition not present */ ksSystemControlStartEnum __RPC_FAR *PVal);


void __RPC_STUB IProceduresLibrary_SystemControlStart_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_UniqueId_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IProceduresLibrary_get_UniqueId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_Executable_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IProceduresLibrary_get_Executable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_AddIns_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IProceduresLibrary_get_AddIns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_ExternalInterface_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB IProceduresLibrary_get_ExternalInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibrary_get_LibraryName_Proxy( 
    IProceduresLibrary __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IProceduresLibrary_get_LibraryName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProceduresLibrary_INTERFACE_DEFINED__ */


#ifndef __IProcedures_INTERFACE_DEFINED__
#define __IProcedures_INTERFACE_DEFINED__

/* interface IProcedures */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProcedures,0x1A77F076,0x2295,0x40f9,0xB1,0xAA,0x28,0x38,0xC4,0xCA,0x08,0x87);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1A77F076-2295-40f9-B1AA-2838C4CA0887")
    IProcedures : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IProcedure __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemByID( 
            /* [in] */ long ID,
            /* [retval][out] */ IProcedure __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProceduresVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProcedures __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProcedures __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProcedures __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProcedures __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProcedures __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProcedures __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProcedures __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProcedures __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProcedures __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProcedures __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProcedures __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IProcedures __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IProcedures __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IProcedures __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IProcedure __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemByID )( 
            IProcedures __RPC_FAR * This,
            /* [in] */ long ID,
            /* [retval][out] */ IProcedure __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IProceduresVtbl;

    interface IProcedures
    {
        CONST_VTBL struct IProceduresVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IProcedures_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IProcedures_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IProcedures_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IProcedures_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IProcedures_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IProcedures_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IProcedures_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IProcedures_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProcedures_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProcedures_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProcedures_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProcedures_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IProcedures_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IProcedures_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IProcedures_get_ItemByID(This,ID,Result)	\
    (This)->lpVtbl -> get_ItemByID(This,ID,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcedures_get_Item_Proxy( 
    IProcedures __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IProcedure __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IProcedures_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcedures_get_ItemByID_Proxy( 
    IProcedures __RPC_FAR * This,
    /* [in] */ long ID,
    /* [retval][out] */ IProcedure __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IProcedures_get_ItemByID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProcedures_INTERFACE_DEFINED__ */


#ifndef __IProcedure_INTERFACE_DEFINED__
#define __IProcedure_INTERFACE_DEFINED__

/* interface IProcedure */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProcedure,0x7BF9DF08,0xD14D,0x4da9,0xAB,0xC2,0xFB,0x45,0x8E,0x71,0x22,0xD0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7BF9DF08-D14D-4da9-ABC2-FB458E7122D0")
    IProcedure : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryFolder( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ID( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Execute( 
            /* [in] */ LPDISPATCH External,
            /* [in] */ VARIANT_BOOL Post,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProcedureVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProcedure __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProcedure __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProcedure __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProcedure __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProcedure __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProcedure __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProcedure __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryFolder )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ID )( 
            IProcedure __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
            IProcedure __RPC_FAR * This,
            /* [in] */ LPDISPATCH External,
            /* [in] */ VARIANT_BOOL Post,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IProcedureVtbl;

    interface IProcedure
    {
        CONST_VTBL struct IProcedureVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IProcedure_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IProcedure_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IProcedure_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IProcedure_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IProcedure_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IProcedure_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IProcedure_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IProcedure_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProcedure_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProcedure_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProcedure_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProcedure_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define IProcedure_get_LibraryFolder(This,pVal)	\
    (This)->lpVtbl -> get_LibraryFolder(This,pVal)

#define IProcedure_get_ID(This,pVal)	\
    (This)->lpVtbl -> get_ID(This,pVal)

#define IProcedure_Execute(This,External,Post,PVal)	\
    (This)->lpVtbl -> Execute(This,External,Post,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcedure_get_Name_Proxy( 
    IProcedure __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IProcedure_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcedure_get_LibraryFolder_Proxy( 
    IProcedure __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IProcedure_get_LibraryFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProcedure_get_ID_Proxy( 
    IProcedure __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IProcedure_get_ID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IProcedure_Execute_Proxy( 
    IProcedure __RPC_FAR * This,
    /* [in] */ LPDISPATCH External,
    /* [in] */ VARIANT_BOOL Post,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IProcedure_Execute_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProcedure_INTERFACE_DEFINED__ */


#ifndef __IInsertsLibrary_INTERFACE_DEFINED__
#define __IInsertsLibrary_INTERFACE_DEFINED__

/* interface IInsertsLibrary */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertsLibrary,0x885CAD68,0xB42B,0x45cf,0x86,0x20,0xE0,0x13,0x85,0x58,0xEF,0xE3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("885CAD68-B42B-45cf-8620-E0138558EFE3")
    IInsertsLibrary : public ILibrary
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveFolder( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetActiveFolder( 
            /* [in] */ BSTR PathFolder,
            VARIANT_BOOL LastIsFile,
            VARIANT_BOOL HaveLibName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Inserts( 
            /* [retval][out] */ IInserts __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddFolder( 
            /* [in] */ BSTR PathFolder,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveFolder( 
            /* [in] */ BSTR PathFolder,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertsLibraryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertsLibrary __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertsLibrary __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryManagerFolder )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Attach )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Attach )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryType )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLibraryTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Execute )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ long Command,
            /* [in] */ LPDISPATCH External,
            /* [in] */ VARIANT_BOOL Post,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ActiveFolder )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetActiveFolder )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ BSTR PathFolder,
            VARIANT_BOOL LastIsFile,
            VARIANT_BOOL HaveLibName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Inserts )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [retval][out] */ IInserts __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddFolder )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ BSTR PathFolder,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveFolder )( 
            IInsertsLibrary __RPC_FAR * This,
            /* [in] */ BSTR PathFolder,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } IInsertsLibraryVtbl;

    interface IInsertsLibrary
    {
        CONST_VTBL struct IInsertsLibraryVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertsLibrary_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertsLibrary_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertsLibrary_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertsLibrary_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertsLibrary_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertsLibrary_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertsLibrary_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertsLibrary_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertsLibrary_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertsLibrary_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertsLibrary_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertsLibrary_get_LibraryManagerFolder(This,PVal)	\
    (This)->lpVtbl -> get_LibraryManagerFolder(This,PVal)

#define IInsertsLibrary_get_Attach(This,PVal)	\
    (This)->lpVtbl -> get_Attach(This,PVal)

#define IInsertsLibrary_put_Attach(This,Val)	\
    (This)->lpVtbl -> put_Attach(This,Val)

#define IInsertsLibrary_get_LibraryType(This,PVal)	\
    (This)->lpVtbl -> get_LibraryType(This,PVal)

#define IInsertsLibrary_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IInsertsLibrary_get_PathName(This,PVal)	\
    (This)->lpVtbl -> get_PathName(This,PVal)

#define IInsertsLibrary_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IInsertsLibrary_Execute(This,Command,External,Post,PVal)	\
    (This)->lpVtbl -> Execute(This,Command,External,Post,PVal)


#define IInsertsLibrary_get_ActiveFolder(This,pVal)	\
    (This)->lpVtbl -> get_ActiveFolder(This,pVal)

#define IInsertsLibrary_SetActiveFolder(This,PathFolder,LastIsFile,HaveLibName,pVal)	\
    (This)->lpVtbl -> SetActiveFolder(This,PathFolder,LastIsFile,HaveLibName,pVal)

#define IInsertsLibrary_get_Inserts(This,pVal)	\
    (This)->lpVtbl -> get_Inserts(This,pVal)

#define IInsertsLibrary_AddFolder(This,PathFolder,pVal)	\
    (This)->lpVtbl -> AddFolder(This,PathFolder,pVal)

#define IInsertsLibrary_RemoveFolder(This,PathFolder,pVal)	\
    (This)->lpVtbl -> RemoveFolder(This,PathFolder,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertsLibrary_get_ActiveFolder_Proxy( 
    IInsertsLibrary __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IInsertsLibrary_get_ActiveFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertsLibrary_SetActiveFolder_Proxy( 
    IInsertsLibrary __RPC_FAR * This,
    /* [in] */ BSTR PathFolder,
    VARIANT_BOOL LastIsFile,
    VARIANT_BOOL HaveLibName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IInsertsLibrary_SetActiveFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertsLibrary_get_Inserts_Proxy( 
    IInsertsLibrary __RPC_FAR * This,
    /* [retval][out] */ IInserts __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB IInsertsLibrary_get_Inserts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertsLibrary_AddFolder_Proxy( 
    IInsertsLibrary __RPC_FAR * This,
    /* [in] */ BSTR PathFolder,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IInsertsLibrary_AddFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertsLibrary_RemoveFolder_Proxy( 
    IInsertsLibrary __RPC_FAR * This,
    /* [in] */ BSTR PathFolder,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IInsertsLibrary_RemoveFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertsLibrary_INTERFACE_DEFINED__ */


#ifndef __IInserts_INTERFACE_DEFINED__
#define __IInserts_INTERFACE_DEFINED__

/* interface IInserts */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInserts,0xFCBF6340,0x119D,0x4736,0xBB,0x95,0xF1,0xEA,0xB4,0xBE,0xF1,0xB8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FCBF6340-119D-4736-BB95-F1EAB4BEF1B8")
    IInserts : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsert __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* external definition not present */ DocumentTypeEnum DocType,
            /* [retval][out] */ IInsert __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInserts __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInserts __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInserts __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInserts __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInserts __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInserts __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInserts __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInserts __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInserts __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInserts __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInserts __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IInserts __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IInserts __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IInserts __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsert __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IInserts __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* external definition not present */ DocumentTypeEnum DocType,
            /* [retval][out] */ IInsert __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IInsertsVtbl;

    interface IInserts
    {
        CONST_VTBL struct IInsertsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInserts_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInserts_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInserts_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInserts_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInserts_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInserts_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInserts_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInserts_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInserts_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInserts_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInserts_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInserts_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IInserts_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IInserts_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IInserts_Add(This,Name,DocType,Result)	\
    (This)->lpVtbl -> Add(This,Name,DocType,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInserts_get_Item_Proxy( 
    IInserts __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IInsert __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInserts_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInserts_Add_Proxy( 
    IInserts __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* external definition not present */ DocumentTypeEnum DocType,
    /* [retval][out] */ IInsert __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInserts_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInserts_INTERFACE_DEFINED__ */


#ifndef __IInsert_INTERFACE_DEFINED__
#define __IInsert_INTERFACE_DEFINED__

/* interface IInsert */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsert,0xD6A6D305,0x6B5C,0x4392,0xB6,0x1D,0xD6,0x69,0xC0,0x92,0xEE,0xF2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D6A6D305-6B5C-4392-B61D-D669C092EEF2")
    IInsert : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ VARIANT Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryFolder( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PathName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Edit( 
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsert __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsert __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsert __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsert __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsert __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsert __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsert __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IInsert __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IInsert __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryFolder )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PathName )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Edit )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IInsert __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } IInsertVtbl;

    interface IInsert
    {
        CONST_VTBL struct IInsertVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsert_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsert_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsert_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsert_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsert_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsert_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsert_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsert_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsert_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsert_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsert_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsert_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define IInsert_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IInsert_get_Comment(This,pVal)	\
    (This)->lpVtbl -> get_Comment(This,pVal)

#define IInsert_put_Comment(This,Val)	\
    (This)->lpVtbl -> put_Comment(This,Val)

#define IInsert_get_LibraryFolder(This,pVal)	\
    (This)->lpVtbl -> get_LibraryFolder(This,pVal)

#define IInsert_get_PathName(This,pVal)	\
    (This)->lpVtbl -> get_PathName(This,pVal)

#define IInsert_Edit(This,pVal)	\
    (This)->lpVtbl -> Edit(This,pVal)

#define IInsert_Delete(This,pVal)	\
    (This)->lpVtbl -> Delete(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsert_get_Name_Proxy( 
    IInsert __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IInsert_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsert_put_Name_Proxy( 
    IInsert __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IInsert_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsert_get_Comment_Proxy( 
    IInsert __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IInsert_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsert_put_Comment_Proxy( 
    IInsert __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB IInsert_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsert_get_LibraryFolder_Proxy( 
    IInsert __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IInsert_get_LibraryFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsert_get_PathName_Proxy( 
    IInsert __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IInsert_get_PathName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsert_Edit_Proxy( 
    IInsert __RPC_FAR * This,
    /* [retval][out] */ IKompasDocument __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB IInsert_Edit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsert_Delete_Proxy( 
    IInsert __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IInsert_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsert_INTERFACE_DEFINED__ */


#ifndef __IInsertsLibraries_INTERFACE_DEFINED__
#define __IInsertsLibraries_INTERFACE_DEFINED__

/* interface IInsertsLibraries */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertsLibraries,0xA6E82D68,0x69D5,0x40c0,0x9A,0x85,0x27,0x5B,0x22,0x21,0x91,0x35);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A6E82D68-69D5-40c0-9A85-275B22219135")
    IInsertsLibraries : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsertsLibrary __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertsLibrariesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertsLibraries __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertsLibraries __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IInsertsLibraries __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsertsLibrary __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IInsertsLibrariesVtbl;

    interface IInsertsLibraries
    {
        CONST_VTBL struct IInsertsLibrariesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertsLibraries_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertsLibraries_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertsLibraries_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertsLibraries_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertsLibraries_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertsLibraries_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertsLibraries_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertsLibraries_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertsLibraries_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertsLibraries_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertsLibraries_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertsLibraries_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IInsertsLibraries_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IInsertsLibraries_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertsLibraries_get_Item_Proxy( 
    IInsertsLibraries __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IInsertsLibrary __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInsertsLibraries_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertsLibraries_INTERFACE_DEFINED__ */


#ifndef __IProceduresLibraries_INTERFACE_DEFINED__
#define __IProceduresLibraries_INTERFACE_DEFINED__

/* interface IProceduresLibraries */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IProceduresLibraries,0x80F95B5B,0xDB8A,0x46b7,0x8C,0x22,0x60,0x5A,0x0A,0xEC,0xD5,0x97);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("80F95B5B-DB8A-46b7-8C22-605A0AECD597")
    IProceduresLibraries : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProceduresLibrariesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IProceduresLibraries __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IProceduresLibraries __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IProceduresLibraries __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IProceduresLibrariesVtbl;

    interface IProceduresLibraries
    {
        CONST_VTBL struct IProceduresLibrariesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IProceduresLibraries_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IProceduresLibraries_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IProceduresLibraries_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IProceduresLibraries_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IProceduresLibraries_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IProceduresLibraries_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IProceduresLibraries_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IProceduresLibraries_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IProceduresLibraries_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IProceduresLibraries_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IProceduresLibraries_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IProceduresLibraries_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IProceduresLibraries_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IProceduresLibraries_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IProceduresLibraries_get_Item_Proxy( 
    IProceduresLibraries __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IProceduresLibrary __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IProceduresLibraries_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProceduresLibraries_INTERFACE_DEFINED__ */


#ifndef __IDocumentSettings_INTERFACE_DEFINED__
#define __IDocumentSettings_INTERFACE_DEFINED__

/* interface IDocumentSettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDocumentSettings,0xB35FF50E,0x2991,0x4630,0x8A,0xB8,0xDC,0x31,0x53,0xE7,0x97,0x1A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B35FF50E-2991-4630-8AB8-DC3153E7971A")
    IDocumentSettings : public IKompasAPIObject
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IDocumentSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDocumentSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDocumentSettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDocumentSettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDocumentSettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDocumentSettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDocumentSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDocumentSettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IDocumentSettingsVtbl;

    interface IDocumentSettings
    {
        CONST_VTBL struct IDocumentSettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDocumentSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDocumentSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDocumentSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDocumentSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDocumentSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDocumentSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDocumentSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDocumentSettings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDocumentSettings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDocumentSettings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDocumentSettings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IDocumentSettings_INTERFACE_DEFINED__ */


#ifndef __IDocument2DSettings_INTERFACE_DEFINED__
#define __IDocument2DSettings_INTERFACE_DEFINED__

/* interface IDocument2DSettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDocument2DSettings,0xB09A64BF,0x7AA6,0x4bf6,0xB8,0xE8,0xAA,0x8E,0x8E,0xE6,0xE9,0xD6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B09A64BF-7AA6-4bf6-B8E8-AA8E8EE6E9D6")
    IDocument2DSettings : public IDocumentSettings
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayersGroupWay( 
            /* [in] */ /* external definition not present */ LayersGroupWayEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayersGroupWay( 
            /* [retval][out] */ /* external definition not present */ LayersGroupWayEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CompositionInherit( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CompositionInherit( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDocument2DSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDocument2DSettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDocument2DSettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayersGroupWay )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [in] */ /* external definition not present */ LayersGroupWayEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayersGroupWay )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ LayersGroupWayEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CompositionInherit )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CompositionInherit )( 
            IDocument2DSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IDocument2DSettingsVtbl;

    interface IDocument2DSettings
    {
        CONST_VTBL struct IDocument2DSettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDocument2DSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDocument2DSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDocument2DSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDocument2DSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDocument2DSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDocument2DSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDocument2DSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDocument2DSettings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDocument2DSettings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDocument2DSettings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDocument2DSettings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)



#define IDocument2DSettings_put_LayersGroupWay(This,NewVal)	\
    (This)->lpVtbl -> put_LayersGroupWay(This,NewVal)

#define IDocument2DSettings_get_LayersGroupWay(This,PVal)	\
    (This)->lpVtbl -> get_LayersGroupWay(This,PVal)

#define IDocument2DSettings_put_CompositionInherit(This,NewVal)	\
    (This)->lpVtbl -> put_CompositionInherit(This,NewVal)

#define IDocument2DSettings_get_CompositionInherit(This,PVal)	\
    (This)->lpVtbl -> get_CompositionInherit(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDocument2DSettings_put_LayersGroupWay_Proxy( 
    IDocument2DSettings __RPC_FAR * This,
    /* [in] */ /* external definition not present */ LayersGroupWayEnum NewVal);


void __RPC_STUB IDocument2DSettings_put_LayersGroupWay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocument2DSettings_get_LayersGroupWay_Proxy( 
    IDocument2DSettings __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ LayersGroupWayEnum __RPC_FAR *PVal);


void __RPC_STUB IDocument2DSettings_get_LayersGroupWay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDocument2DSettings_put_CompositionInherit_Proxy( 
    IDocument2DSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IDocument2DSettings_put_CompositionInherit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDocument2DSettings_get_CompositionInherit_Proxy( 
    IDocument2DSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDocument2DSettings_get_CompositionInherit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDocument2DSettings_INTERFACE_DEFINED__ */


#ifndef __IDrawingDocumentSettings_INTERFACE_DEFINED__
#define __IDrawingDocumentSettings_INTERFACE_DEFINED__

/* interface IDrawingDocumentSettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingDocumentSettings,0x0DC39FC2,0x4FB1,0x489e,0xA7,0x6E,0xE4,0x74,0x13,0x19,0x9F,0xA3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0DC39FC2-4FB1-489e-A76E-E47413199FA3")
    IDrawingDocumentSettings : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SheetAutoNumber( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetAutoNumber( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SheetFirstNumber( 
            /* [defaultvalue][in] */ long NewVal = 1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetFirstNumber( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SheetAutoCount( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetAutoCount( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SheetsCount( 
            /* [defaultvalue][in] */ long NewVal = 1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetsCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingDocumentSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingDocumentSettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingDocumentSettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SheetAutoNumber )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetAutoNumber )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SheetFirstNumber )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetFirstNumber )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SheetAutoCount )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetAutoCount )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SheetsCount )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetsCount )( 
            IDrawingDocumentSettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IDrawingDocumentSettingsVtbl;

    interface IDrawingDocumentSettings
    {
        CONST_VTBL struct IDrawingDocumentSettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingDocumentSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingDocumentSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingDocumentSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingDocumentSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingDocumentSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingDocumentSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingDocumentSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingDocumentSettings_put_SheetAutoNumber(This,NewVal)	\
    (This)->lpVtbl -> put_SheetAutoNumber(This,NewVal)

#define IDrawingDocumentSettings_get_SheetAutoNumber(This,PVal)	\
    (This)->lpVtbl -> get_SheetAutoNumber(This,PVal)

#define IDrawingDocumentSettings_put_SheetFirstNumber(This,NewVal)	\
    (This)->lpVtbl -> put_SheetFirstNumber(This,NewVal)

#define IDrawingDocumentSettings_get_SheetFirstNumber(This,PVal)	\
    (This)->lpVtbl -> get_SheetFirstNumber(This,PVal)

#define IDrawingDocumentSettings_put_SheetAutoCount(This,NewVal)	\
    (This)->lpVtbl -> put_SheetAutoCount(This,NewVal)

#define IDrawingDocumentSettings_get_SheetAutoCount(This,PVal)	\
    (This)->lpVtbl -> get_SheetAutoCount(This,PVal)

#define IDrawingDocumentSettings_put_SheetsCount(This,NewVal)	\
    (This)->lpVtbl -> put_SheetsCount(This,NewVal)

#define IDrawingDocumentSettings_get_SheetsCount(This,PVal)	\
    (This)->lpVtbl -> get_SheetsCount(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_put_SheetAutoNumber_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IDrawingDocumentSettings_put_SheetAutoNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_get_SheetAutoNumber_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDrawingDocumentSettings_get_SheetAutoNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_put_SheetFirstNumber_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IDrawingDocumentSettings_put_SheetFirstNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_get_SheetFirstNumber_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IDrawingDocumentSettings_get_SheetFirstNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_put_SheetAutoCount_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IDrawingDocumentSettings_put_SheetAutoCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_get_SheetAutoCount_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDrawingDocumentSettings_get_SheetAutoCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_put_SheetsCount_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IDrawingDocumentSettings_put_SheetsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingDocumentSettings_get_SheetsCount_Proxy( 
    IDrawingDocumentSettings __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IDrawingDocumentSettings_get_SheetsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingDocumentSettings_INTERFACE_DEFINED__ */


#ifndef __IFragmentDocumentSettings_INTERFACE_DEFINED__
#define __IFragmentDocumentSettings_INTERFACE_DEFINED__

/* interface IFragmentDocumentSettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IFragmentDocumentSettings,0xA33D05CF,0xEFFF,0x4bbe,0x9B,0xE0,0x15,0xD2,0x83,0x42,0x58,0x28);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A33D05CF-EFFF-4bbe-9BE0-15D283425828")
    IFragmentDocumentSettings : public IDispatch
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IFragmentDocumentSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IFragmentDocumentSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IFragmentDocumentSettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IFragmentDocumentSettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IFragmentDocumentSettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IFragmentDocumentSettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IFragmentDocumentSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IFragmentDocumentSettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } IFragmentDocumentSettingsVtbl;

    interface IFragmentDocumentSettings
    {
        CONST_VTBL struct IFragmentDocumentSettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IFragmentDocumentSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IFragmentDocumentSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IFragmentDocumentSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IFragmentDocumentSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IFragmentDocumentSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IFragmentDocumentSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IFragmentDocumentSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IFragmentDocumentSettings_INTERFACE_DEFINED__ */


#ifndef __ISystemSettings_INTERFACE_DEFINED__
#define __ISystemSettings_INTERFACE_DEFINED__

/* interface ISystemSettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISystemSettings,0xFFB66332,0x17FF,0x47eb,0xAC,0x43,0x32,0x08,0x4F,0x8F,0x60,0x77);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FFB66332-17FF-47eb-AC43-32084F8F6077")
    ISystemSettings : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FilesAutoSaveSwitchOn( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FilesAutoSaveSwitchOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FilesBackupPrevCopySwitchOn( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FilesBackupPrevCopySwitchOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ModelLocalCSCreateInAbsoluteCS( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelLocalCSCreateInAbsoluteCS( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ModelLocalCSSetActive( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelLocalCSSetActive( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ModelSmoothMotion( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelSmoothMotion( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReportStyleListSettings( 
            /* [retval][out] */ ILibArraySettings __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISystemSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISystemSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISystemSettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISystemSettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISystemSettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISystemSettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISystemSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISystemSettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FilesAutoSaveSwitchOn )( 
            ISystemSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FilesAutoSaveSwitchOn )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FilesBackupPrevCopySwitchOn )( 
            ISystemSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FilesBackupPrevCopySwitchOn )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ModelLocalCSCreateInAbsoluteCS )( 
            ISystemSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelLocalCSCreateInAbsoluteCS )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ModelLocalCSSetActive )( 
            ISystemSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelLocalCSSetActive )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ModelSmoothMotion )( 
            ISystemSettings __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelSmoothMotion )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReportStyleListSettings )( 
            ISystemSettings __RPC_FAR * This,
            /* [retval][out] */ ILibArraySettings __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISystemSettingsVtbl;

    interface ISystemSettings
    {
        CONST_VTBL struct ISystemSettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISystemSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISystemSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISystemSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISystemSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISystemSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISystemSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISystemSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISystemSettings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISystemSettings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISystemSettings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISystemSettings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISystemSettings_put_FilesAutoSaveSwitchOn(This,NewVal)	\
    (This)->lpVtbl -> put_FilesAutoSaveSwitchOn(This,NewVal)

#define ISystemSettings_get_FilesAutoSaveSwitchOn(This,PVal)	\
    (This)->lpVtbl -> get_FilesAutoSaveSwitchOn(This,PVal)

#define ISystemSettings_put_FilesBackupPrevCopySwitchOn(This,NewVal)	\
    (This)->lpVtbl -> put_FilesBackupPrevCopySwitchOn(This,NewVal)

#define ISystemSettings_get_FilesBackupPrevCopySwitchOn(This,PVal)	\
    (This)->lpVtbl -> get_FilesBackupPrevCopySwitchOn(This,PVal)

#define ISystemSettings_put_ModelLocalCSCreateInAbsoluteCS(This,NewVal)	\
    (This)->lpVtbl -> put_ModelLocalCSCreateInAbsoluteCS(This,NewVal)

#define ISystemSettings_get_ModelLocalCSCreateInAbsoluteCS(This,PVal)	\
    (This)->lpVtbl -> get_ModelLocalCSCreateInAbsoluteCS(This,PVal)

#define ISystemSettings_put_ModelLocalCSSetActive(This,NewVal)	\
    (This)->lpVtbl -> put_ModelLocalCSSetActive(This,NewVal)

#define ISystemSettings_get_ModelLocalCSSetActive(This,PVal)	\
    (This)->lpVtbl -> get_ModelLocalCSSetActive(This,PVal)

#define ISystemSettings_put_ModelSmoothMotion(This,NewVal)	\
    (This)->lpVtbl -> put_ModelSmoothMotion(This,NewVal)

#define ISystemSettings_get_ModelSmoothMotion(This,PVal)	\
    (This)->lpVtbl -> get_ModelSmoothMotion(This,PVal)

#define ISystemSettings_get_ReportStyleListSettings(This,PVal)	\
    (This)->lpVtbl -> get_ReportStyleListSettings(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISystemSettings_put_FilesAutoSaveSwitchOn_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISystemSettings_put_FilesAutoSaveSwitchOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISystemSettings_get_FilesAutoSaveSwitchOn_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISystemSettings_get_FilesAutoSaveSwitchOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISystemSettings_put_FilesBackupPrevCopySwitchOn_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISystemSettings_put_FilesBackupPrevCopySwitchOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISystemSettings_get_FilesBackupPrevCopySwitchOn_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISystemSettings_get_FilesBackupPrevCopySwitchOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISystemSettings_put_ModelLocalCSCreateInAbsoluteCS_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISystemSettings_put_ModelLocalCSCreateInAbsoluteCS_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISystemSettings_get_ModelLocalCSCreateInAbsoluteCS_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISystemSettings_get_ModelLocalCSCreateInAbsoluteCS_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISystemSettings_put_ModelLocalCSSetActive_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISystemSettings_put_ModelLocalCSSetActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISystemSettings_get_ModelLocalCSSetActive_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISystemSettings_get_ModelLocalCSSetActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISystemSettings_put_ModelSmoothMotion_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISystemSettings_put_ModelSmoothMotion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISystemSettings_get_ModelSmoothMotion_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISystemSettings_get_ModelSmoothMotion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISystemSettings_get_ReportStyleListSettings_Proxy( 
    ISystemSettings __RPC_FAR * This,
    /* [retval][out] */ ILibArraySettings __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISystemSettings_get_ReportStyleListSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISystemSettings_INTERFACE_DEFINED__ */


#ifndef __ILibArraySettings_INTERFACE_DEFINED__
#define __ILibArraySettings_INTERFACE_DEFINED__

/* interface ILibArraySettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILibArraySettings,0x76D9033D,0x5F87,0x41cc,0xA3,0xE8,0x55,0xEF,0xEE,0x94,0xB6,0x77);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("76D9033D-5F87-41cc-A3E8-55EFEE94B677")
    ILibArraySettings : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLibrary( 
            /* [in] */ long Index,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Use,
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLibraryUse( 
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT_BOOL Use,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLibrarys( 
            /* [out] */ VARIANT __RPC_FAR *FileNames,
            /* [out] */ VARIANT __RPC_FAR *Uses,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddLibrary( 
            /* [in] */ BSTR FileName,
            /* [in] */ VARIANT_BOOL Use,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveLibrary( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILibArraySettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILibArraySettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILibArraySettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILibArraySettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILibArraySettings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILibArraySettings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILibArraySettings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILibArraySettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryCount )( 
            ILibArraySettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLibrary )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Use,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLibraryUse )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT_BOOL Use,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLibrarys )( 
            ILibArraySettings __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *FileNames,
            /* [out] */ VARIANT __RPC_FAR *Uses,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddLibrary )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [in] */ VARIANT_BOOL Use,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveLibrary )( 
            ILibArraySettings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ILibArraySettingsVtbl;

    interface ILibArraySettings
    {
        CONST_VTBL struct ILibArraySettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILibArraySettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILibArraySettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILibArraySettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILibArraySettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILibArraySettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILibArraySettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILibArraySettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILibArraySettings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILibArraySettings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILibArraySettings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILibArraySettings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILibArraySettings_get_LibraryCount(This,Count)	\
    (This)->lpVtbl -> get_LibraryCount(This,Count)

#define ILibArraySettings_GetLibrary(This,Index,Use,Result)	\
    (This)->lpVtbl -> GetLibrary(This,Index,Use,Result)

#define ILibArraySettings_SetLibraryUse(This,Index,Use,Result)	\
    (This)->lpVtbl -> SetLibraryUse(This,Index,Use,Result)

#define ILibArraySettings_GetLibrarys(This,FileNames,Uses,Result)	\
    (This)->lpVtbl -> GetLibrarys(This,FileNames,Uses,Result)

#define ILibArraySettings_AddLibrary(This,FileName,Use,Result)	\
    (This)->lpVtbl -> AddLibrary(This,FileName,Use,Result)

#define ILibArraySettings_RemoveLibrary(This,Index,Result)	\
    (This)->lpVtbl -> RemoveLibrary(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibArraySettings_get_LibraryCount_Proxy( 
    ILibArraySettings __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB ILibArraySettings_get_LibraryCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibArraySettings_GetLibrary_Proxy( 
    ILibArraySettings __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Use,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB ILibArraySettings_GetLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibArraySettings_SetLibraryUse_Proxy( 
    ILibArraySettings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [in] */ VARIANT_BOOL Use,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILibArraySettings_SetLibraryUse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibArraySettings_GetLibrarys_Proxy( 
    ILibArraySettings __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *FileNames,
    /* [out] */ VARIANT __RPC_FAR *Uses,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILibArraySettings_GetLibrarys_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibArraySettings_AddLibrary_Proxy( 
    ILibArraySettings __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [in] */ VARIANT_BOOL Use,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILibArraySettings_AddLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibArraySettings_RemoveLibrary_Proxy( 
    ILibArraySettings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILibArraySettings_RemoveLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILibArraySettings_INTERFACE_DEFINED__ */


#ifndef __ILibItemSettings_INTERFACE_DEFINED__
#define __ILibItemSettings_INTERFACE_DEFINED__

/* interface ILibItemSettings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILibItemSettings,0xC474582A,0x2AD4,0x4ed5,0xA8,0x6A,0xA1,0x69,0xC4,0xDA,0x5D,0x54);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C474582A-2AD4-4ed5-A86A-A169C4DA5D54")
    ILibItemSettings : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetItem( 
            /* [in] */ VARIANT Index,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Use,
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetItem( 
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT_BOOL Use,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetItems( 
            /* [out] */ VARIANT __RPC_FAR *UniqIds,
            /* [out] */ VARIANT __RPC_FAR *Uses,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILibItemSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILibItemSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILibItemSettings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILibItemSettings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILibItemSettings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILibItemSettings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILibItemSettings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILibItemSettings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemCount )( 
            ILibItemSettings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetItem )( 
            ILibItemSettings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Use,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetItem )( 
            ILibItemSettings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT_BOOL Use,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetItems )( 
            ILibItemSettings __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *UniqIds,
            /* [out] */ VARIANT __RPC_FAR *Uses,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ILibItemSettingsVtbl;

    interface ILibItemSettings
    {
        CONST_VTBL struct ILibItemSettingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILibItemSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILibItemSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILibItemSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILibItemSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILibItemSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILibItemSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILibItemSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILibItemSettings_get_ItemCount(This,Count)	\
    (This)->lpVtbl -> get_ItemCount(This,Count)

#define ILibItemSettings_GetItem(This,Index,Use,Result)	\
    (This)->lpVtbl -> GetItem(This,Index,Use,Result)

#define ILibItemSettings_SetItem(This,Index,Use,Result)	\
    (This)->lpVtbl -> SetItem(This,Index,Use,Result)

#define ILibItemSettings_GetItems(This,UniqIds,Uses,Result)	\
    (This)->lpVtbl -> GetItems(This,UniqIds,Uses,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILibItemSettings_get_ItemCount_Proxy( 
    ILibItemSettings __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB ILibItemSettings_get_ItemCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibItemSettings_GetItem_Proxy( 
    ILibItemSettings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Use,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ILibItemSettings_GetItem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibItemSettings_SetItem_Proxy( 
    ILibItemSettings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [in] */ VARIANT_BOOL Use,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILibItemSettings_SetItem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILibItemSettings_GetItems_Proxy( 
    ILibItemSettings __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *UniqIds,
    /* [out] */ VARIANT __RPC_FAR *Uses,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILibItemSettings_GetItems_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILibItemSettings_INTERFACE_DEFINED__ */


#ifndef __ISpecificationDescriptions_INTERFACE_DEFINED__
#define __ISpecificationDescriptions_INTERFACE_DEFINED__

/* interface ISpecificationDescriptions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationDescriptions,0xB9632C5C,0x86E1,0x4bc9,0x83,0xA5,0xA9,0x54,0xE4,0x07,0x24,0x6A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B9632C5C-86E1-4bc9-83A5-A954E407246A")
    ISpecificationDescriptions : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR LayoutName,
            /* [in] */ long StyleID,
            /* [in] */ BSTR SpcName,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [in] */ BSTR LayoutName,
            /* [in] */ long StyleID,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationDescriptionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationDescriptions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationDescriptions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ BSTR LayoutName,
            /* [in] */ long StyleID,
            /* [in] */ BSTR SpcName,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Description )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [in] */ BSTR LayoutName,
            /* [in] */ long StyleID,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            ISpecificationDescriptions __RPC_FAR * This,
            /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationDescriptionsVtbl;

    interface ISpecificationDescriptions
    {
        CONST_VTBL struct ISpecificationDescriptionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationDescriptions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationDescriptions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationDescriptions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationDescriptions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationDescriptions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationDescriptions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationDescriptions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationDescriptions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationDescriptions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationDescriptions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationDescriptions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationDescriptions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationDescriptions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationDescriptions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ISpecificationDescriptions_Add(This,LayoutName,StyleID,SpcName,Result)	\
    (This)->lpVtbl -> Add(This,LayoutName,StyleID,SpcName,Result)

#define ISpecificationDescriptions_get_Description(This,LayoutName,StyleID,Result)	\
    (This)->lpVtbl -> get_Description(This,LayoutName,StyleID,Result)

#define ISpecificationDescriptions_get_Active(This,Result)	\
    (This)->lpVtbl -> get_Active(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescriptions_get_Item_Proxy( 
    ISpecificationDescriptions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescriptions_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationDescriptions_Add_Proxy( 
    ISpecificationDescriptions __RPC_FAR * This,
    /* [in] */ BSTR LayoutName,
    /* [in] */ long StyleID,
    /* [in] */ BSTR SpcName,
    /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescriptions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescriptions_get_Description_Proxy( 
    ISpecificationDescriptions __RPC_FAR * This,
    /* [in] */ BSTR LayoutName,
    /* [in] */ long StyleID,
    /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescriptions_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescriptions_get_Active_Proxy( 
    ISpecificationDescriptions __RPC_FAR * This,
    /* [retval][out] */ ISpecificationDescription __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescriptions_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationDescriptions_INTERFACE_DEFINED__ */


#ifndef __ISpecificationDescription_INTERFACE_DEFINED__
#define __ISpecificationDescription_INTERFACE_DEFINED__

/* interface ISpecificationDescription */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationDescription,0x9678959E,0x166B,0x45f3,0xBD,0xE8,0x88,0xBB,0xF4,0x64,0x5F,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9678959E-166B-45f3-BDE8-88BBF4645F5C")
    ISpecificationDescription : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LayoutName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleID( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StyleID( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecificationDocumentName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SpecificationDocumentName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Active( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecificationStyle( 
            /* [retval][out] */ ISpecificationStyle __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecificationTuning( 
            /* [retval][out] */ ISpecificationTuning __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Objects( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObjects( 
            /* [retval][out] */ ISpecificationBaseObjects __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CommentObjects( 
            /* [retval][out] */ ISpecificationCommentObjects __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowOnSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowOnSheet( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentObject( 
            /* [retval][out] */ ISpecificationObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentObject( 
            /* [in] */ ISpecificationObject __RPC_FAR *obj) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowAllObjects( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowAllObjects( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PerformanceName( 
            /* [in] */ long PerformanceIndex,
            /* [in] */ long BlockIndex,
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PerformanceName( 
            /* [in] */ long PerformanceIndex,
            /* [in] */ long BlockIndex,
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DelegateMode( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DelegateMode( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = TRUE) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationDescriptionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationDescription __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationDescription __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutName )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayoutName )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StyleID )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StyleID )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationDocumentName )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecificationDocumentName )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Active )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Active )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationStyle )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ ISpecificationStyle __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationTuning )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ ISpecificationTuning __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Objects )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObjects )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ ISpecificationBaseObjects __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CommentObjects )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ ISpecificationCommentObjects __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowOnSheet )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowOnSheet )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentObject )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ ISpecificationObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CurrentObject )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ ISpecificationObject __RPC_FAR *obj);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowAllObjects )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowAllObjects )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PerformanceName )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ long PerformanceIndex,
            /* [in] */ long BlockIndex,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PerformanceName )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [in] */ long PerformanceIndex,
            /* [in] */ long BlockIndex,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DelegateMode )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DelegateMode )( 
            ISpecificationDescription __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        END_INTERFACE
    } ISpecificationDescriptionVtbl;

    interface ISpecificationDescription
    {
        CONST_VTBL struct ISpecificationDescriptionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationDescription_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationDescription_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationDescription_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationDescription_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationDescription_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationDescription_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationDescription_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationDescription_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationDescription_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationDescription_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationDescription_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationDescription_get_LayoutName(This,pVal)	\
    (This)->lpVtbl -> get_LayoutName(This,pVal)

#define ISpecificationDescription_put_LayoutName(This,Val)	\
    (This)->lpVtbl -> put_LayoutName(This,Val)

#define ISpecificationDescription_get_StyleID(This,pVal)	\
    (This)->lpVtbl -> get_StyleID(This,pVal)

#define ISpecificationDescription_put_StyleID(This,Val)	\
    (This)->lpVtbl -> put_StyleID(This,Val)

#define ISpecificationDescription_get_SpecificationDocumentName(This,pVal)	\
    (This)->lpVtbl -> get_SpecificationDocumentName(This,pVal)

#define ISpecificationDescription_put_SpecificationDocumentName(This,Val)	\
    (This)->lpVtbl -> put_SpecificationDocumentName(This,Val)

#define ISpecificationDescription_get_Active(This,pVal)	\
    (This)->lpVtbl -> get_Active(This,pVal)

#define ISpecificationDescription_put_Active(This,Val)	\
    (This)->lpVtbl -> put_Active(This,Val)

#define ISpecificationDescription_Update(This,pVal)	\
    (This)->lpVtbl -> Update(This,pVal)

#define ISpecificationDescription_Delete(This,pVal)	\
    (This)->lpVtbl -> Delete(This,pVal)

#define ISpecificationDescription_get_SpecificationStyle(This,Result)	\
    (This)->lpVtbl -> get_SpecificationStyle(This,Result)

#define ISpecificationDescription_get_SpecificationTuning(This,Result)	\
    (This)->lpVtbl -> get_SpecificationTuning(This,Result)

#define ISpecificationDescription_get_Objects(This,Result)	\
    (This)->lpVtbl -> get_Objects(This,Result)

#define ISpecificationDescription_get_BaseObjects(This,Result)	\
    (This)->lpVtbl -> get_BaseObjects(This,Result)

#define ISpecificationDescription_get_CommentObjects(This,Result)	\
    (This)->lpVtbl -> get_CommentObjects(This,Result)

#define ISpecificationDescription_get_ShowOnSheet(This,pVal)	\
    (This)->lpVtbl -> get_ShowOnSheet(This,pVal)

#define ISpecificationDescription_put_ShowOnSheet(This,Val)	\
    (This)->lpVtbl -> put_ShowOnSheet(This,Val)

#define ISpecificationDescription_get_CurrentObject(This,Result)	\
    (This)->lpVtbl -> get_CurrentObject(This,Result)

#define ISpecificationDescription_put_CurrentObject(This,obj)	\
    (This)->lpVtbl -> put_CurrentObject(This,obj)

#define ISpecificationDescription_get_ShowAllObjects(This,pVal)	\
    (This)->lpVtbl -> get_ShowAllObjects(This,pVal)

#define ISpecificationDescription_put_ShowAllObjects(This,Val)	\
    (This)->lpVtbl -> put_ShowAllObjects(This,Val)

#define ISpecificationDescription_get_PerformanceName(This,PerformanceIndex,BlockIndex,pVal)	\
    (This)->lpVtbl -> get_PerformanceName(This,PerformanceIndex,BlockIndex,pVal)

#define ISpecificationDescription_put_PerformanceName(This,PerformanceIndex,BlockIndex,Val)	\
    (This)->lpVtbl -> put_PerformanceName(This,PerformanceIndex,BlockIndex,Val)

#define ISpecificationDescription_get_DelegateMode(This,pVal)	\
    (This)->lpVtbl -> get_DelegateMode(This,pVal)

#define ISpecificationDescription_put_DelegateMode(This,Val)	\
    (This)->lpVtbl -> put_DelegateMode(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_LayoutName_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_LayoutName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_LayoutName_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ISpecificationDescription_put_LayoutName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_StyleID_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_StyleID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_StyleID_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationDescription_put_StyleID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_SpecificationDocumentName_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_SpecificationDocumentName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_SpecificationDocumentName_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ISpecificationDescription_put_SpecificationDocumentName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_Active_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_Active_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationDescription_put_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_Update_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_Delete_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_SpecificationStyle_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ ISpecificationStyle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescription_get_SpecificationStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_SpecificationTuning_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ ISpecificationTuning __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescription_get_SpecificationTuning_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_Objects_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ISpecificationDescription_get_Objects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_BaseObjects_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ ISpecificationBaseObjects __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescription_get_BaseObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_CommentObjects_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ ISpecificationCommentObjects __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescription_get_CommentObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_ShowOnSheet_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_ShowOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_ShowOnSheet_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationDescription_put_ShowOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_CurrentObject_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ ISpecificationObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationDescription_get_CurrentObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_CurrentObject_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [in] */ ISpecificationObject __RPC_FAR *obj);


void __RPC_STUB ISpecificationDescription_put_CurrentObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_ShowAllObjects_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_ShowAllObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_ShowAllObjects_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationDescription_put_ShowAllObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_PerformanceName_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [in] */ long PerformanceIndex,
    /* [in] */ long BlockIndex,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_PerformanceName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_PerformanceName_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [in] */ long PerformanceIndex,
    /* [in] */ long BlockIndex,
    /* [in] */ BSTR Val);


void __RPC_STUB ISpecificationDescription_put_PerformanceName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_get_DelegateMode_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationDescription_get_DelegateMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationDescription_put_DelegateMode_Proxy( 
    ISpecificationDescription __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationDescription_put_DelegateMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationDescription_INTERFACE_DEFINED__ */


#ifndef __ISpecificationStyle_INTERFACE_DEFINED__
#define __ISpecificationStyle_INTERFACE_DEFINED__

/* interface ISpecificationStyle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationStyle,0xF237D2B3,0xDFEE,0x4702,0xB7,0x1F,0xE5,0xF6,0x92,0x3F,0x03,0xE6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F237D2B3-DFEE-4702-B71F-E5F6923F03E6")
    ISpecificationStyle : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutName1( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleID1( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LayoutName2( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StyleID2( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variant( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationVariantEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SectionOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecificationTuning( 
            /* [retval][out] */ ISpecificationTuning __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Format( 
            /* [retval][out] */ ISheetFormat __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalColumns( 
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sections( 
            /* [retval][out] */ ISpecificationSectionStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlocks( 
            /* [retval][out] */ IAdditionalBlockStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortSectionDown( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationStyle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationStyle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutName1 )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StyleID1 )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayoutName2 )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StyleID2 )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variant )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationVariantEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SectionOn )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationTuning )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ ISpecificationTuning __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Format )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ ISheetFormat __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalColumns )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sections )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ ISpecificationSectionStyles __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlocks )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ IAdditionalBlockStyles __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortSectionDown )( 
            ISpecificationStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationStyleVtbl;

    interface ISpecificationStyle
    {
        CONST_VTBL struct ISpecificationStyleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationStyle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationStyle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationStyle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationStyle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationStyle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationStyle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationStyle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationStyle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationStyle_get_LayoutName1(This,pVal)	\
    (This)->lpVtbl -> get_LayoutName1(This,pVal)

#define ISpecificationStyle_get_StyleID1(This,pVal)	\
    (This)->lpVtbl -> get_StyleID1(This,pVal)

#define ISpecificationStyle_get_LayoutName2(This,pVal)	\
    (This)->lpVtbl -> get_LayoutName2(This,pVal)

#define ISpecificationStyle_get_StyleID2(This,pVal)	\
    (This)->lpVtbl -> get_StyleID2(This,pVal)

#define ISpecificationStyle_get_Variant(This,pVal)	\
    (This)->lpVtbl -> get_Variant(This,pVal)

#define ISpecificationStyle_get_SectionOn(This,pVal)	\
    (This)->lpVtbl -> get_SectionOn(This,pVal)

#define ISpecificationStyle_get_SpecificationTuning(This,pVal)	\
    (This)->lpVtbl -> get_SpecificationTuning(This,pVal)

#define ISpecificationStyle_get_Format(This,pVal)	\
    (This)->lpVtbl -> get_Format(This,pVal)

#define ISpecificationStyle_get_Columns(This,pVal)	\
    (This)->lpVtbl -> get_Columns(This,pVal)

#define ISpecificationStyle_get_AdditionalColumns(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalColumns(This,pVal)

#define ISpecificationStyle_get_Sections(This,pVal)	\
    (This)->lpVtbl -> get_Sections(This,pVal)

#define ISpecificationStyle_get_AdditionalBlocks(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlocks(This,pVal)

#define ISpecificationStyle_get_SortSectionDown(This,pVal)	\
    (This)->lpVtbl -> get_SortSectionDown(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_LayoutName1_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_LayoutName1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_StyleID1_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_StyleID1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_LayoutName2_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_LayoutName2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_StyleID2_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_StyleID2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_Variant_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationVariantEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_Variant_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_SectionOn_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_SectionOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_SpecificationTuning_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ ISpecificationTuning __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_SpecificationTuning_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_Format_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ ISheetFormat __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_Format_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_Columns_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_Columns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_AdditionalColumns_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_AdditionalColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_Sections_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ ISpecificationSectionStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_Sections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_AdditionalBlocks_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ IAdditionalBlockStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_AdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationStyle_get_SortSectionDown_Proxy( 
    ISpecificationStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationStyle_get_SortSectionDown_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationStyle_INTERFACE_DEFINED__ */


#ifndef __ISpecificationColumnStyles_INTERFACE_DEFINED__
#define __ISpecificationColumnStyles_INTERFACE_DEFINED__

/* interface ISpecificationColumnStyles */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationColumnStyles,0x41529A95,0x51F0,0x44b0,0x9D,0x55,0x57,0x53,0xBC,0xEB,0x23,0xBC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("41529A95-51F0-44b0-9D55-5753BCEB23BC")
    ISpecificationColumnStyles : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationColumnStyle __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationColumnStylesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationColumnStyles __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationColumnStyles __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationColumnStyles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationColumnStyle __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationColumnStylesVtbl;

    interface ISpecificationColumnStyles
    {
        CONST_VTBL struct ISpecificationColumnStylesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationColumnStyles_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationColumnStyles_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationColumnStyles_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationColumnStyles_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationColumnStyles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationColumnStyles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationColumnStyles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationColumnStyles_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationColumnStyles_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationColumnStyles_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationColumnStyles_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationColumnStyles_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationColumnStyles_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationColumnStyles_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyles_get_Item_Proxy( 
    ISpecificationColumnStyles __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationColumnStyle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationColumnStyles_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationColumnStyles_INTERFACE_DEFINED__ */


#ifndef __ISpecificationColumnStyle_INTERFACE_DEFINED__
#define __ISpecificationColumnStyle_INTERFACE_DEFINED__

/* interface ISpecificationColumnStyle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationColumnStyle,0x16839CAA,0x3AFB,0x49a4,0xA1,0x9A,0xC6,0x19,0x63,0x96,0x76,0x49);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("16839CAA-3AFB-49a4-A19A-C61963967649")
    ISpecificationColumnStyle : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnType( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Edit( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CalculateSum( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MultiplyToCount( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseForSectionTitle( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDown( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StampLinkID( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ValueType( 
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeLibraryName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeKey1( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeKey2( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeKey3( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeKey4( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinValue( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MaxValue( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseIn3D( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationColumnStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationColumnStyle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationColumnStyle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnType )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Edit )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CalculateSum )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MultiplyToCount )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseForSectionTitle )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDown )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StampLinkID )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ValueType )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeLibraryName )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeKey1 )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeKey2 )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeKey3 )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeKey4 )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinValue )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MaxValue )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseIn3D )( 
            ISpecificationColumnStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationColumnStyleVtbl;

    interface ISpecificationColumnStyle
    {
        CONST_VTBL struct ISpecificationColumnStyleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationColumnStyle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationColumnStyle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationColumnStyle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationColumnStyle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationColumnStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationColumnStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationColumnStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationColumnStyle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationColumnStyle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationColumnStyle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationColumnStyle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationColumnStyle_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define ISpecificationColumnStyle_get_ColumnType(This,pVal)	\
    (This)->lpVtbl -> get_ColumnType(This,pVal)

#define ISpecificationColumnStyle_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define ISpecificationColumnStyle_get_Edit(This,pVal)	\
    (This)->lpVtbl -> get_Edit(This,pVal)

#define ISpecificationColumnStyle_get_CalculateSum(This,pVal)	\
    (This)->lpVtbl -> get_CalculateSum(This,pVal)

#define ISpecificationColumnStyle_get_MultiplyToCount(This,pVal)	\
    (This)->lpVtbl -> get_MultiplyToCount(This,pVal)

#define ISpecificationColumnStyle_get_UseForSectionTitle(This,pVal)	\
    (This)->lpVtbl -> get_UseForSectionTitle(This,pVal)

#define ISpecificationColumnStyle_get_TextDown(This,pVal)	\
    (This)->lpVtbl -> get_TextDown(This,pVal)

#define ISpecificationColumnStyle_get_StampLinkID(This,pVal)	\
    (This)->lpVtbl -> get_StampLinkID(This,pVal)

#define ISpecificationColumnStyle_get_ValueType(This,pVal)	\
    (This)->lpVtbl -> get_ValueType(This,pVal)

#define ISpecificationColumnStyle_get_AttributeLibraryName(This,pVal)	\
    (This)->lpVtbl -> get_AttributeLibraryName(This,pVal)

#define ISpecificationColumnStyle_get_AttributeKey1(This,pVal)	\
    (This)->lpVtbl -> get_AttributeKey1(This,pVal)

#define ISpecificationColumnStyle_get_AttributeKey2(This,pVal)	\
    (This)->lpVtbl -> get_AttributeKey2(This,pVal)

#define ISpecificationColumnStyle_get_AttributeKey3(This,pVal)	\
    (This)->lpVtbl -> get_AttributeKey3(This,pVal)

#define ISpecificationColumnStyle_get_AttributeKey4(This,pVal)	\
    (This)->lpVtbl -> get_AttributeKey4(This,pVal)

#define ISpecificationColumnStyle_get_MinValue(This,PVal)	\
    (This)->lpVtbl -> get_MinValue(This,PVal)

#define ISpecificationColumnStyle_get_MaxValue(This,PVal)	\
    (This)->lpVtbl -> get_MaxValue(This,PVal)

#define ISpecificationColumnStyle_get_UseIn3D(This,pVal)	\
    (This)->lpVtbl -> get_UseIn3D(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_Name_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_ColumnType_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_ColumnType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_Number_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_Edit_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_Edit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_CalculateSum_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_CalculateSum_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_MultiplyToCount_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_MultiplyToCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_UseForSectionTitle_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_UseForSectionTitle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_TextDown_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_TextDown_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_StampLinkID_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_StampLinkID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_ValueType_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_ValueType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_AttributeLibraryName_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_AttributeLibraryName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_AttributeKey1_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_AttributeKey1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_AttributeKey2_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_AttributeKey2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_AttributeKey3_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_AttributeKey3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_AttributeKey4_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_AttributeKey4_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_MinValue_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumnStyle_get_MinValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_MaxValue_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumnStyle_get_MaxValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnStyle_get_UseIn3D_Proxy( 
    ISpecificationColumnStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumnStyle_get_UseIn3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationColumnStyle_INTERFACE_DEFINED__ */


#ifndef __ISpecificationSectionStyles_INTERFACE_DEFINED__
#define __ISpecificationSectionStyles_INTERFACE_DEFINED__

/* interface ISpecificationSectionStyles */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationSectionStyles,0x24AE8484,0xF4F4,0x4059,0xAF,0xC7,0x94,0x92,0xA6,0x4C,0x88,0xE8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("24AE8484-F4F4-4059-AFC7-9492A64C88E8")
    ISpecificationSectionStyles : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationSectionStyle __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationSectionStylesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationSectionStyles __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationSectionStyles __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationSectionStyles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationSectionStyle __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationSectionStylesVtbl;

    interface ISpecificationSectionStyles
    {
        CONST_VTBL struct ISpecificationSectionStylesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationSectionStyles_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationSectionStyles_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationSectionStyles_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationSectionStyles_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationSectionStyles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationSectionStyles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationSectionStyles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationSectionStyles_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationSectionStyles_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationSectionStyles_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationSectionStyles_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationSectionStyles_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationSectionStyles_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationSectionStyles_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyles_get_Item_Proxy( 
    ISpecificationSectionStyles __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationSectionStyle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationSectionStyles_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationSectionStyles_INTERFACE_DEFINED__ */


#ifndef __ISpecificationSectionStyle_INTERFACE_DEFINED__
#define __ISpecificationSectionStyle_INTERFACE_DEFINED__

/* interface ISpecificationSectionStyle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationSectionStyle,0x4B61FC7F,0x4826,0x4b58,0x8C,0xCB,0x7D,0x45,0x9A,0xD0,0xBE,0x7B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4B61FC7F-4826-4b58-8CCB-7D459AD0BE7B")
    ISpecificationSectionStyle : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortColumnType( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortColumnNumber( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FillDataFromStamp( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortType( 
            /* [retval][out] */ /* external definition not present */ ksSortTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalColumns( 
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlocks( 
            /* [retval][out] */ IAdditionalBlockStyles __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationSectionStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationSectionStyle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationSectionStyle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortColumnType )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortColumnNumber )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FillDataFromStamp )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortType )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSortTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalColumns )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlocks )( 
            ISpecificationSectionStyle __RPC_FAR * This,
            /* [retval][out] */ IAdditionalBlockStyles __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationSectionStyleVtbl;

    interface ISpecificationSectionStyle
    {
        CONST_VTBL struct ISpecificationSectionStyleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationSectionStyle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationSectionStyle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationSectionStyle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationSectionStyle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationSectionStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationSectionStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationSectionStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationSectionStyle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationSectionStyle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationSectionStyle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationSectionStyle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationSectionStyle_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define ISpecificationSectionStyle_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define ISpecificationSectionStyle_get_SortColumnType(This,pVal)	\
    (This)->lpVtbl -> get_SortColumnType(This,pVal)

#define ISpecificationSectionStyle_get_SortColumnNumber(This,pVal)	\
    (This)->lpVtbl -> get_SortColumnNumber(This,pVal)

#define ISpecificationSectionStyle_get_FillDataFromStamp(This,pVal)	\
    (This)->lpVtbl -> get_FillDataFromStamp(This,pVal)

#define ISpecificationSectionStyle_get_SortType(This,pVal)	\
    (This)->lpVtbl -> get_SortType(This,pVal)

#define ISpecificationSectionStyle_get_Columns(This,pVal)	\
    (This)->lpVtbl -> get_Columns(This,pVal)

#define ISpecificationSectionStyle_get_AdditionalColumns(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalColumns(This,pVal)

#define ISpecificationSectionStyle_get_AdditionalBlocks(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlocks(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_Name_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_Number_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_SortColumnType_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_SortColumnType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_SortColumnNumber_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_SortColumnNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_FillDataFromStamp_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_FillDataFromStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_SortType_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSortTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_SortType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_Columns_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_Columns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_AdditionalColumns_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumnStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_AdditionalColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSectionStyle_get_AdditionalBlocks_Proxy( 
    ISpecificationSectionStyle __RPC_FAR * This,
    /* [retval][out] */ IAdditionalBlockStyles __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationSectionStyle_get_AdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationSectionStyle_INTERFACE_DEFINED__ */


#ifndef __IAdditionalBlockStyles_INTERFACE_DEFINED__
#define __IAdditionalBlockStyles_INTERFACE_DEFINED__

/* interface IAdditionalBlockStyles */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAdditionalBlockStyles,0x90E2FBEC,0xA56F,0x423c,0xB8,0x9F,0x47,0x96,0x73,0xED,0xD8,0x95);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("90E2FBEC-A56F-423c-B89F-479673EDD895")
    IAdditionalBlockStyles : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAdditionalBlockStyle __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionalBlockStylesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAdditionalBlockStyles __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAdditionalBlockStyles __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAdditionalBlockStyles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAdditionalBlockStyle __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAdditionalBlockStylesVtbl;

    interface IAdditionalBlockStyles
    {
        CONST_VTBL struct IAdditionalBlockStylesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAdditionalBlockStyles_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAdditionalBlockStyles_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAdditionalBlockStyles_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAdditionalBlockStyles_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAdditionalBlockStyles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAdditionalBlockStyles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAdditionalBlockStyles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAdditionalBlockStyles_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAdditionalBlockStyles_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAdditionalBlockStyles_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAdditionalBlockStyles_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAdditionalBlockStyles_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAdditionalBlockStyles_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAdditionalBlockStyles_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockStyles_get_Item_Proxy( 
    IAdditionalBlockStyles __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAdditionalBlockStyle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAdditionalBlockStyles_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAdditionalBlockStyles_INTERFACE_DEFINED__ */


#ifndef __IAdditionalBlockStyle_INTERFACE_DEFINED__
#define __IAdditionalBlockStyle_INTERFACE_DEFINED__

/* interface IAdditionalBlockStyle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAdditionalBlockStyle,0xB2A43FA6,0x9BCE,0x4468,0x96,0x62,0x81,0x1A,0x62,0x55,0xE2,0x20);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B2A43FA6-9BCE-4468-9662-811A6255E220")
    IAdditionalBlockStyle : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionalBlockStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAdditionalBlockStyle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAdditionalBlockStyle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IAdditionalBlockStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        END_INTERFACE
    } IAdditionalBlockStyleVtbl;

    interface IAdditionalBlockStyle
    {
        CONST_VTBL struct IAdditionalBlockStyleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAdditionalBlockStyle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAdditionalBlockStyle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAdditionalBlockStyle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAdditionalBlockStyle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAdditionalBlockStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAdditionalBlockStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAdditionalBlockStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAdditionalBlockStyle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAdditionalBlockStyle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAdditionalBlockStyle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAdditionalBlockStyle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAdditionalBlockStyle_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define IAdditionalBlockStyle_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockStyle_get_Name_Proxy( 
    IAdditionalBlockStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockStyle_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockStyle_get_Number_Proxy( 
    IAdditionalBlockStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockStyle_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAdditionalBlockStyle_INTERFACE_DEFINED__ */


#ifndef __ISpecificationTuning_INTERFACE_DEFINED__
#define __ISpecificationTuning_INTERFACE_DEFINED__

/* interface ISpecificationTuning */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationTuning,0xBB719D42,0xE44C,0x445b,0x96,0x9A,0x0E,0x2F,0x63,0xE9,0x7F,0xC8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BB719D42-E44C-445b-969A-0E2F63E97FC8")
    ISpecificationTuning : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinkType( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationLinkTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinkType( 
            /* [in] */ /* external definition not present */ ksSpecificationLinkTypeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CalculateZone( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CalculateZone( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CalculatePosition( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CalculatePosition( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowSectionName( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowSectionName( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeleteGeometry( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeleteGeometry( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisableEmptyString( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisableEmptyString( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisableEmptyBlockString( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisableEmptyBlockString( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertNull( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertNull( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertDash( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertDash( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowInfoByObjects( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowInfoByObjects( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SupportPerformance( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SupportPerformance( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowPerformanceFull( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowPerformanceFull( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockOnNewPage( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockOnNewPage( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositionUp( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositionUp( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawBottomUp( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawBottomUp( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UserTextStyle( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UserTextStyle( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PerformanceCount( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PerformanceCount( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockCount( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InitialPosition( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InitialPosition( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PredefinedTextFileName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PredefinedTextFileName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SectionTextStyleFirst( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SectionTextStyleNext( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectTextStyle( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sections( 
            /* [retval][out] */ ISpecificationTuningSections __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseAdditionalBlocks( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseAdditionalBlocks( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlocks( 
            /* [retval][out] */ IAdditionalBlockTunings __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowAdditionalBlockName( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowAdditionalBlockName( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowNestingBlockName( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowNestingBlockName( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShowPerformanceBlockName( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShowPerformanceBlockName( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PerformanceBlockTextStyleFirst( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PerformanceBlockTextStyleNext( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlockTextStyleFirst( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlockTextStyleNext( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NestingBlockTextStyleFirst( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NestingBlockTextStyleNext( 
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisableNestingBlockEmptyStrings( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisableNestingBlockEmptyStrings( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisableAdditionalBlockEmptyStrings( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisableAdditionalBlockEmptyStrings( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeleteSpcObjectOnDeleteGeometry( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeleteSpcObjectOnDeleteGeometry( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CopySpcObjectOnCopyGeometry( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CopySpcObjectOnCopyGeometry( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationTuningVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationTuning __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationTuning __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LinkType )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationLinkTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LinkType )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksSpecificationLinkTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CalculateZone )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CalculateZone )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CalculatePosition )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CalculatePosition )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowSectionName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowSectionName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeleteGeometry )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeleteGeometry )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DisableEmptyString )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DisableEmptyString )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DisableEmptyBlockString )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DisableEmptyBlockString )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertNull )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertNull )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertDash )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertDash )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowInfoByObjects )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowInfoByObjects )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SupportPerformance )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SupportPerformance )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowPerformanceFull )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowPerformanceFull )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockOnNewPage )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BlockOnNewPage )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositionUp )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositionUp )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawBottomUp )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawBottomUp )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserTextStyle )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UserTextStyle )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PerformanceCount )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PerformanceCount )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockCount )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InitialPosition )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InitialPosition )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PredefinedTextFileName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PredefinedTextFileName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SectionTextStyleFirst )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SectionTextStyleNext )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectTextStyle )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sections )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ISpecificationTuningSections __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseAdditionalBlocks )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UseAdditionalBlocks )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlocks )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ IAdditionalBlockTunings __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowAdditionalBlockName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowAdditionalBlockName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowNestingBlockName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowNestingBlockName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShowPerformanceBlockName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShowPerformanceBlockName )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PerformanceBlockTextStyleFirst )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PerformanceBlockTextStyleNext )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlockTextStyleFirst )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlockTextStyleNext )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestingBlockTextStyleFirst )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestingBlockTextStyleNext )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DisableNestingBlockEmptyStrings )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DisableNestingBlockEmptyStrings )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DisableAdditionalBlockEmptyStrings )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DisableAdditionalBlockEmptyStrings )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeleteSpcObjectOnDeleteGeometry )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeleteSpcObjectOnDeleteGeometry )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CopySpcObjectOnCopyGeometry )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CopySpcObjectOnCopyGeometry )( 
            ISpecificationTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        END_INTERFACE
    } ISpecificationTuningVtbl;

    interface ISpecificationTuning
    {
        CONST_VTBL struct ISpecificationTuningVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationTuning_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationTuning_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationTuning_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationTuning_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationTuning_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationTuning_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationTuning_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationTuning_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationTuning_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationTuning_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationTuning_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationTuning_get_LinkType(This,pVal)	\
    (This)->lpVtbl -> get_LinkType(This,pVal)

#define ISpecificationTuning_put_LinkType(This,Val)	\
    (This)->lpVtbl -> put_LinkType(This,Val)

#define ISpecificationTuning_get_CalculateZone(This,pVal)	\
    (This)->lpVtbl -> get_CalculateZone(This,pVal)

#define ISpecificationTuning_put_CalculateZone(This,Val)	\
    (This)->lpVtbl -> put_CalculateZone(This,Val)

#define ISpecificationTuning_get_CalculatePosition(This,pVal)	\
    (This)->lpVtbl -> get_CalculatePosition(This,pVal)

#define ISpecificationTuning_put_CalculatePosition(This,Val)	\
    (This)->lpVtbl -> put_CalculatePosition(This,Val)

#define ISpecificationTuning_get_ShowSectionName(This,pVal)	\
    (This)->lpVtbl -> get_ShowSectionName(This,pVal)

#define ISpecificationTuning_put_ShowSectionName(This,Val)	\
    (This)->lpVtbl -> put_ShowSectionName(This,Val)

#define ISpecificationTuning_get_DeleteGeometry(This,pVal)	\
    (This)->lpVtbl -> get_DeleteGeometry(This,pVal)

#define ISpecificationTuning_put_DeleteGeometry(This,Val)	\
    (This)->lpVtbl -> put_DeleteGeometry(This,Val)

#define ISpecificationTuning_get_DisableEmptyString(This,pVal)	\
    (This)->lpVtbl -> get_DisableEmptyString(This,pVal)

#define ISpecificationTuning_put_DisableEmptyString(This,Val)	\
    (This)->lpVtbl -> put_DisableEmptyString(This,Val)

#define ISpecificationTuning_get_DisableEmptyBlockString(This,pVal)	\
    (This)->lpVtbl -> get_DisableEmptyBlockString(This,pVal)

#define ISpecificationTuning_put_DisableEmptyBlockString(This,Val)	\
    (This)->lpVtbl -> put_DisableEmptyBlockString(This,Val)

#define ISpecificationTuning_get_InsertNull(This,pVal)	\
    (This)->lpVtbl -> get_InsertNull(This,pVal)

#define ISpecificationTuning_put_InsertNull(This,Val)	\
    (This)->lpVtbl -> put_InsertNull(This,Val)

#define ISpecificationTuning_get_InsertDash(This,pVal)	\
    (This)->lpVtbl -> get_InsertDash(This,pVal)

#define ISpecificationTuning_put_InsertDash(This,Val)	\
    (This)->lpVtbl -> put_InsertDash(This,Val)

#define ISpecificationTuning_get_ShowInfoByObjects(This,pVal)	\
    (This)->lpVtbl -> get_ShowInfoByObjects(This,pVal)

#define ISpecificationTuning_put_ShowInfoByObjects(This,Val)	\
    (This)->lpVtbl -> put_ShowInfoByObjects(This,Val)

#define ISpecificationTuning_get_SupportPerformance(This,pVal)	\
    (This)->lpVtbl -> get_SupportPerformance(This,pVal)

#define ISpecificationTuning_put_SupportPerformance(This,Val)	\
    (This)->lpVtbl -> put_SupportPerformance(This,Val)

#define ISpecificationTuning_get_ShowPerformanceFull(This,pVal)	\
    (This)->lpVtbl -> get_ShowPerformanceFull(This,pVal)

#define ISpecificationTuning_put_ShowPerformanceFull(This,Val)	\
    (This)->lpVtbl -> put_ShowPerformanceFull(This,Val)

#define ISpecificationTuning_get_BlockOnNewPage(This,pVal)	\
    (This)->lpVtbl -> get_BlockOnNewPage(This,pVal)

#define ISpecificationTuning_put_BlockOnNewPage(This,Val)	\
    (This)->lpVtbl -> put_BlockOnNewPage(This,Val)

#define ISpecificationTuning_get_PositionUp(This,pVal)	\
    (This)->lpVtbl -> get_PositionUp(This,pVal)

#define ISpecificationTuning_put_PositionUp(This,Val)	\
    (This)->lpVtbl -> put_PositionUp(This,Val)

#define ISpecificationTuning_get_DrawBottomUp(This,pVal)	\
    (This)->lpVtbl -> get_DrawBottomUp(This,pVal)

#define ISpecificationTuning_put_DrawBottomUp(This,Val)	\
    (This)->lpVtbl -> put_DrawBottomUp(This,Val)

#define ISpecificationTuning_get_UserTextStyle(This,pVal)	\
    (This)->lpVtbl -> get_UserTextStyle(This,pVal)

#define ISpecificationTuning_put_UserTextStyle(This,Val)	\
    (This)->lpVtbl -> put_UserTextStyle(This,Val)

#define ISpecificationTuning_get_PerformanceCount(This,pVal)	\
    (This)->lpVtbl -> get_PerformanceCount(This,pVal)

#define ISpecificationTuning_put_PerformanceCount(This,Val)	\
    (This)->lpVtbl -> put_PerformanceCount(This,Val)

#define ISpecificationTuning_get_BlockCount(This,pVal)	\
    (This)->lpVtbl -> get_BlockCount(This,pVal)

#define ISpecificationTuning_get_InitialPosition(This,pVal)	\
    (This)->lpVtbl -> get_InitialPosition(This,pVal)

#define ISpecificationTuning_put_InitialPosition(This,Val)	\
    (This)->lpVtbl -> put_InitialPosition(This,Val)

#define ISpecificationTuning_get_PredefinedTextFileName(This,pVal)	\
    (This)->lpVtbl -> get_PredefinedTextFileName(This,pVal)

#define ISpecificationTuning_put_PredefinedTextFileName(This,Val)	\
    (This)->lpVtbl -> put_PredefinedTextFileName(This,Val)

#define ISpecificationTuning_get_SectionTextStyleFirst(This,pVal)	\
    (This)->lpVtbl -> get_SectionTextStyleFirst(This,pVal)

#define ISpecificationTuning_get_SectionTextStyleNext(This,pVal)	\
    (This)->lpVtbl -> get_SectionTextStyleNext(This,pVal)

#define ISpecificationTuning_get_ObjectTextStyle(This,pVal)	\
    (This)->lpVtbl -> get_ObjectTextStyle(This,pVal)

#define ISpecificationTuning_get_Sections(This,pVal)	\
    (This)->lpVtbl -> get_Sections(This,pVal)

#define ISpecificationTuning_get_UseAdditionalBlocks(This,pVal)	\
    (This)->lpVtbl -> get_UseAdditionalBlocks(This,pVal)

#define ISpecificationTuning_put_UseAdditionalBlocks(This,Val)	\
    (This)->lpVtbl -> put_UseAdditionalBlocks(This,Val)

#define ISpecificationTuning_get_AdditionalBlocks(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlocks(This,pVal)

#define ISpecificationTuning_get_ShowAdditionalBlockName(This,pVal)	\
    (This)->lpVtbl -> get_ShowAdditionalBlockName(This,pVal)

#define ISpecificationTuning_put_ShowAdditionalBlockName(This,Val)	\
    (This)->lpVtbl -> put_ShowAdditionalBlockName(This,Val)

#define ISpecificationTuning_get_ShowNestingBlockName(This,pVal)	\
    (This)->lpVtbl -> get_ShowNestingBlockName(This,pVal)

#define ISpecificationTuning_put_ShowNestingBlockName(This,Val)	\
    (This)->lpVtbl -> put_ShowNestingBlockName(This,Val)

#define ISpecificationTuning_get_ShowPerformanceBlockName(This,pVal)	\
    (This)->lpVtbl -> get_ShowPerformanceBlockName(This,pVal)

#define ISpecificationTuning_put_ShowPerformanceBlockName(This,Val)	\
    (This)->lpVtbl -> put_ShowPerformanceBlockName(This,Val)

#define ISpecificationTuning_get_PerformanceBlockTextStyleFirst(This,pVal)	\
    (This)->lpVtbl -> get_PerformanceBlockTextStyleFirst(This,pVal)

#define ISpecificationTuning_get_PerformanceBlockTextStyleNext(This,pVal)	\
    (This)->lpVtbl -> get_PerformanceBlockTextStyleNext(This,pVal)

#define ISpecificationTuning_get_AdditionalBlockTextStyleFirst(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlockTextStyleFirst(This,pVal)

#define ISpecificationTuning_get_AdditionalBlockTextStyleNext(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlockTextStyleNext(This,pVal)

#define ISpecificationTuning_get_NestingBlockTextStyleFirst(This,pVal)	\
    (This)->lpVtbl -> get_NestingBlockTextStyleFirst(This,pVal)

#define ISpecificationTuning_get_NestingBlockTextStyleNext(This,pVal)	\
    (This)->lpVtbl -> get_NestingBlockTextStyleNext(This,pVal)

#define ISpecificationTuning_get_DisableNestingBlockEmptyStrings(This,pVal)	\
    (This)->lpVtbl -> get_DisableNestingBlockEmptyStrings(This,pVal)

#define ISpecificationTuning_put_DisableNestingBlockEmptyStrings(This,Val)	\
    (This)->lpVtbl -> put_DisableNestingBlockEmptyStrings(This,Val)

#define ISpecificationTuning_get_DisableAdditionalBlockEmptyStrings(This,pVal)	\
    (This)->lpVtbl -> get_DisableAdditionalBlockEmptyStrings(This,pVal)

#define ISpecificationTuning_put_DisableAdditionalBlockEmptyStrings(This,Val)	\
    (This)->lpVtbl -> put_DisableAdditionalBlockEmptyStrings(This,Val)

#define ISpecificationTuning_Update(This,pVal)	\
    (This)->lpVtbl -> Update(This,pVal)

#define ISpecificationTuning_get_DeleteSpcObjectOnDeleteGeometry(This,pVal)	\
    (This)->lpVtbl -> get_DeleteSpcObjectOnDeleteGeometry(This,pVal)

#define ISpecificationTuning_put_DeleteSpcObjectOnDeleteGeometry(This,Val)	\
    (This)->lpVtbl -> put_DeleteSpcObjectOnDeleteGeometry(This,Val)

#define ISpecificationTuning_get_CopySpcObjectOnCopyGeometry(This,pVal)	\
    (This)->lpVtbl -> get_CopySpcObjectOnCopyGeometry(This,pVal)

#define ISpecificationTuning_put_CopySpcObjectOnCopyGeometry(This,Val)	\
    (This)->lpVtbl -> put_CopySpcObjectOnCopyGeometry(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_LinkType_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationLinkTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_LinkType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_LinkType_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksSpecificationLinkTypeEnum Val);


void __RPC_STUB ISpecificationTuning_put_LinkType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_CalculateZone_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_CalculateZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_CalculateZone_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_CalculateZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_CalculatePosition_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_CalculatePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_CalculatePosition_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_CalculatePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ShowSectionName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ShowSectionName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_ShowSectionName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_ShowSectionName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DeleteGeometry_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DeleteGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DeleteGeometry_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DeleteGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DisableEmptyString_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DisableEmptyString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DisableEmptyString_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DisableEmptyString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DisableEmptyBlockString_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DisableEmptyBlockString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DisableEmptyBlockString_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DisableEmptyBlockString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_InsertNull_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_InsertNull_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_InsertNull_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_InsertNull_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_InsertDash_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_InsertDash_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_InsertDash_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_InsertDash_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ShowInfoByObjects_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ShowInfoByObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_ShowInfoByObjects_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_ShowInfoByObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_SupportPerformance_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_SupportPerformance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_SupportPerformance_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_SupportPerformance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ShowPerformanceFull_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ShowPerformanceFull_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_ShowPerformanceFull_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_ShowPerformanceFull_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_BlockOnNewPage_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_BlockOnNewPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_BlockOnNewPage_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_BlockOnNewPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_PositionUp_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_PositionUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_PositionUp_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_PositionUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DrawBottomUp_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DrawBottomUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DrawBottomUp_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DrawBottomUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_UserTextStyle_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_UserTextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_UserTextStyle_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_UserTextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_PerformanceCount_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_PerformanceCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_PerformanceCount_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationTuning_put_PerformanceCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_BlockCount_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_BlockCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_InitialPosition_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_InitialPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_InitialPosition_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationTuning_put_InitialPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_PredefinedTextFileName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_PredefinedTextFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_PredefinedTextFileName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ISpecificationTuning_put_PredefinedTextFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_SectionTextStyleFirst_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_SectionTextStyleFirst_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_SectionTextStyleNext_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_SectionTextStyleNext_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ObjectTextStyle_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ObjectTextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_Sections_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ISpecificationTuningSections __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_Sections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_UseAdditionalBlocks_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_UseAdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_UseAdditionalBlocks_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_UseAdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_AdditionalBlocks_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ IAdditionalBlockTunings __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_AdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ShowAdditionalBlockName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ShowAdditionalBlockName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_ShowAdditionalBlockName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_ShowAdditionalBlockName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ShowNestingBlockName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ShowNestingBlockName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_ShowNestingBlockName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_ShowNestingBlockName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_ShowPerformanceBlockName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_ShowPerformanceBlockName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_ShowPerformanceBlockName_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_ShowPerformanceBlockName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_PerformanceBlockTextStyleFirst_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_PerformanceBlockTextStyleFirst_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_PerformanceBlockTextStyleNext_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_PerformanceBlockTextStyleNext_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_AdditionalBlockTextStyleFirst_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_AdditionalBlockTextStyleFirst_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_AdditionalBlockTextStyleNext_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_AdditionalBlockTextStyleNext_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_NestingBlockTextStyleFirst_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_NestingBlockTextStyleFirst_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_NestingBlockTextStyleNext_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ ITextStyle __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_NestingBlockTextStyleNext_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DisableNestingBlockEmptyStrings_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DisableNestingBlockEmptyStrings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DisableNestingBlockEmptyStrings_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DisableNestingBlockEmptyStrings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DisableAdditionalBlockEmptyStrings_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DisableAdditionalBlockEmptyStrings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DisableAdditionalBlockEmptyStrings_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DisableAdditionalBlockEmptyStrings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_Update_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_DeleteSpcObjectOnDeleteGeometry_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_DeleteSpcObjectOnDeleteGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_DeleteSpcObjectOnDeleteGeometry_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_DeleteSpcObjectOnDeleteGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_get_CopySpcObjectOnCopyGeometry_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuning_get_CopySpcObjectOnCopyGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuning_put_CopySpcObjectOnCopyGeometry_Proxy( 
    ISpecificationTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuning_put_CopySpcObjectOnCopyGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationTuning_INTERFACE_DEFINED__ */


#ifndef __ISpecificationTuningSections_INTERFACE_DEFINED__
#define __ISpecificationTuningSections_INTERFACE_DEFINED__

/* interface ISpecificationTuningSections */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationTuningSections,0x01B1BF6F,0xB9E3,0x4e94,0x99,0xA0,0x81,0x39,0x4F,0xB9,0x9B,0x16);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("01B1BF6F-B9E3-4e94-99A0-81394FB99B16")
    ISpecificationTuningSections : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationTuningSection __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationTuningSectionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationTuningSections __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationTuningSections __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationTuningSections __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationTuningSection __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationTuningSectionsVtbl;

    interface ISpecificationTuningSections
    {
        CONST_VTBL struct ISpecificationTuningSectionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationTuningSections_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationTuningSections_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationTuningSections_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationTuningSections_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationTuningSections_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationTuningSections_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationTuningSections_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationTuningSections_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationTuningSections_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationTuningSections_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationTuningSections_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationTuningSections_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationTuningSections_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationTuningSections_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSections_get_Item_Proxy( 
    ISpecificationTuningSections __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationTuningSection __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationTuningSections_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationTuningSections_INTERFACE_DEFINED__ */


#ifndef __ISpecificationTuningSection_INTERFACE_DEFINED__
#define __ISpecificationTuningSection_INTERFACE_DEFINED__

/* interface ISpecificationTuningSection */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationTuningSection,0xE68AA413,0xCC35,0x450d,0xBF,0x35,0x0F,0x29,0x4F,0x59,0xB0,0x8C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E68AA413-CC35-450d-BF35-0F294F59B08C")
    ISpecificationTuningSection : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubsectionOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubsectionOn( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttachGeometry( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AttachGeometry( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PutPosition( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PutPosition( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SortObjects( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SortObjects( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FirstOnSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FirstOnSheet( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReserveStringCount( 
            /* [retval][out] */ short __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReserveStringCount( 
            /* [in] */ short Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Subsections( 
            /* [retval][out] */ ISpecificationSubsections __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseAdditionalBlocks( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseAdditionalBlocks( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlocks( 
            /* [retval][out] */ IAdditionalBlockTunings __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationTuningSectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationTuningSection __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationTuningSection __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SubsectionOn )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SubsectionOn )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttachGeometry )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttachGeometry )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PutPosition )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PutPosition )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SortObjects )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SortObjects )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FirstOnSheet )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FirstOnSheet )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReserveStringCount )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ short __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReserveStringCount )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ short Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Subsections )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ ISpecificationSubsections __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseAdditionalBlocks )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UseAdditionalBlocks )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlocks )( 
            ISpecificationTuningSection __RPC_FAR * This,
            /* [retval][out] */ IAdditionalBlockTunings __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationTuningSectionVtbl;

    interface ISpecificationTuningSection
    {
        CONST_VTBL struct ISpecificationTuningSectionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationTuningSection_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationTuningSection_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationTuningSection_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationTuningSection_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationTuningSection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationTuningSection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationTuningSection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationTuningSection_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationTuningSection_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationTuningSection_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationTuningSection_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationTuningSection_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define ISpecificationTuningSection_get_SubsectionOn(This,pVal)	\
    (This)->lpVtbl -> get_SubsectionOn(This,pVal)

#define ISpecificationTuningSection_put_SubsectionOn(This,Val)	\
    (This)->lpVtbl -> put_SubsectionOn(This,Val)

#define ISpecificationTuningSection_get_AttachGeometry(This,pVal)	\
    (This)->lpVtbl -> get_AttachGeometry(This,pVal)

#define ISpecificationTuningSection_put_AttachGeometry(This,Val)	\
    (This)->lpVtbl -> put_AttachGeometry(This,Val)

#define ISpecificationTuningSection_get_PutPosition(This,pVal)	\
    (This)->lpVtbl -> get_PutPosition(This,pVal)

#define ISpecificationTuningSection_put_PutPosition(This,Val)	\
    (This)->lpVtbl -> put_PutPosition(This,Val)

#define ISpecificationTuningSection_get_SortObjects(This,pVal)	\
    (This)->lpVtbl -> get_SortObjects(This,pVal)

#define ISpecificationTuningSection_put_SortObjects(This,Val)	\
    (This)->lpVtbl -> put_SortObjects(This,Val)

#define ISpecificationTuningSection_get_FirstOnSheet(This,pVal)	\
    (This)->lpVtbl -> get_FirstOnSheet(This,pVal)

#define ISpecificationTuningSection_put_FirstOnSheet(This,Val)	\
    (This)->lpVtbl -> put_FirstOnSheet(This,Val)

#define ISpecificationTuningSection_get_ReserveStringCount(This,pVal)	\
    (This)->lpVtbl -> get_ReserveStringCount(This,pVal)

#define ISpecificationTuningSection_put_ReserveStringCount(This,Val)	\
    (This)->lpVtbl -> put_ReserveStringCount(This,Val)

#define ISpecificationTuningSection_get_Subsections(This,pVal)	\
    (This)->lpVtbl -> get_Subsections(This,pVal)

#define ISpecificationTuningSection_get_UseAdditionalBlocks(This,pVal)	\
    (This)->lpVtbl -> get_UseAdditionalBlocks(This,pVal)

#define ISpecificationTuningSection_put_UseAdditionalBlocks(This,Val)	\
    (This)->lpVtbl -> put_UseAdditionalBlocks(This,Val)

#define ISpecificationTuningSection_get_AdditionalBlocks(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlocks(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_Number_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_SubsectionOn_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_SubsectionOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_SubsectionOn_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuningSection_put_SubsectionOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_AttachGeometry_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_AttachGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_AttachGeometry_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuningSection_put_AttachGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_PutPosition_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_PutPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_PutPosition_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuningSection_put_PutPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_SortObjects_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_SortObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_SortObjects_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuningSection_put_SortObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_FirstOnSheet_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_FirstOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_FirstOnSheet_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuningSection_put_FirstOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_ReserveStringCount_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ short __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_ReserveStringCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_ReserveStringCount_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ short Val);


void __RPC_STUB ISpecificationTuningSection_put_ReserveStringCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_Subsections_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ ISpecificationSubsections __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_Subsections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_UseAdditionalBlocks_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_UseAdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_put_UseAdditionalBlocks_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationTuningSection_put_UseAdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationTuningSection_get_AdditionalBlocks_Proxy( 
    ISpecificationTuningSection __RPC_FAR * This,
    /* [retval][out] */ IAdditionalBlockTunings __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationTuningSection_get_AdditionalBlocks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationTuningSection_INTERFACE_DEFINED__ */


#ifndef __ISpecificationSubsections_INTERFACE_DEFINED__
#define __ISpecificationSubsections_INTERFACE_DEFINED__

/* interface ISpecificationSubsections */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationSubsections,0x56532CB4,0xBD3F,0x442c,0xAF,0xA4,0x0E,0x6B,0xEB,0x67,0x7E,0x61);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("56532CB4-BD3F-442c-AFA4-0E6BEB677E61")
    ISpecificationSubsections : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationSubsection __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [in] */ short Number,
            /* [retval][out] */ ISpecificationSubsection __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationSubsectionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationSubsections __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationSubsections __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationSubsection __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISpecificationSubsections __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ short Number,
            /* [retval][out] */ ISpecificationSubsection __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationSubsectionsVtbl;

    interface ISpecificationSubsections
    {
        CONST_VTBL struct ISpecificationSubsectionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationSubsections_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationSubsections_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationSubsections_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationSubsections_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationSubsections_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationSubsections_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationSubsections_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationSubsections_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationSubsections_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationSubsections_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationSubsections_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationSubsections_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationSubsections_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationSubsections_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ISpecificationSubsections_Add(This,Name,Number,Result)	\
    (This)->lpVtbl -> Add(This,Name,Number,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSubsections_get_Item_Proxy( 
    ISpecificationSubsections __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationSubsection __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationSubsections_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationSubsections_Add_Proxy( 
    ISpecificationSubsections __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ short Number,
    /* [retval][out] */ ISpecificationSubsection __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationSubsections_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationSubsections_INTERFACE_DEFINED__ */


#ifndef __ISpecificationSubsection_INTERFACE_DEFINED__
#define __ISpecificationSubsection_INTERFACE_DEFINED__

/* interface ISpecificationSubsection */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationSubsection,0x7F0E5F63,0x815C,0x46e5,0xB9,0x9E,0xC2,0x42,0x44,0x56,0x6C,0x00);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7F0E5F63-815C-46e5-B99E-C24244566C00")
    ISpecificationSubsection : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ short __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Change( 
            /* [in] */ BSTR Name,
            /* [in] */ short Number,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationSubsectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationSubsection __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationSubsection __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ short __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Change )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ short Number,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ISpecificationSubsection __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationSubsectionVtbl;

    interface ISpecificationSubsection
    {
        CONST_VTBL struct ISpecificationSubsectionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationSubsection_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationSubsection_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationSubsection_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationSubsection_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationSubsection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationSubsection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationSubsection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationSubsection_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationSubsection_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationSubsection_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationSubsection_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationSubsection_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define ISpecificationSubsection_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define ISpecificationSubsection_Change(This,Name,Number,pVal)	\
    (This)->lpVtbl -> Change(This,Name,Number,pVal)

#define ISpecificationSubsection_Delete(This,pVal)	\
    (This)->lpVtbl -> Delete(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSubsection_get_Name_Proxy( 
    ISpecificationSubsection __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSubsection_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationSubsection_get_Number_Proxy( 
    ISpecificationSubsection __RPC_FAR * This,
    /* [retval][out] */ short __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSubsection_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationSubsection_Change_Proxy( 
    ISpecificationSubsection __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ short Number,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSubsection_Change_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationSubsection_Delete_Proxy( 
    ISpecificationSubsection __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationSubsection_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationSubsection_INTERFACE_DEFINED__ */


#ifndef __IAdditionalBlockTunings_INTERFACE_DEFINED__
#define __IAdditionalBlockTunings_INTERFACE_DEFINED__

/* interface IAdditionalBlockTunings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAdditionalBlockTunings,0x8910CC92,0xAC76,0x4837,0xAB,0x7A,0x5F,0xD3,0xC7,0xB7,0x47,0x28);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8910CC92-AC76-4837-AB7A-5FD3C7B74728")
    IAdditionalBlockTunings : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAdditionalBlockTuning __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionalBlockTuningsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAdditionalBlockTunings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAdditionalBlockTunings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAdditionalBlockTunings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAdditionalBlockTuning __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAdditionalBlockTuningsVtbl;

    interface IAdditionalBlockTunings
    {
        CONST_VTBL struct IAdditionalBlockTuningsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAdditionalBlockTunings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAdditionalBlockTunings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAdditionalBlockTunings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAdditionalBlockTunings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAdditionalBlockTunings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAdditionalBlockTunings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAdditionalBlockTunings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAdditionalBlockTunings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAdditionalBlockTunings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAdditionalBlockTunings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAdditionalBlockTunings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAdditionalBlockTunings_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAdditionalBlockTunings_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAdditionalBlockTunings_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTunings_get_Item_Proxy( 
    IAdditionalBlockTunings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAdditionalBlockTuning __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAdditionalBlockTunings_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAdditionalBlockTunings_INTERFACE_DEFINED__ */


#ifndef __IAdditionalBlockTuning_INTERFACE_DEFINED__
#define __IAdditionalBlockTuning_INTERFACE_DEFINED__

/* interface IAdditionalBlockTuning */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAdditionalBlockTuning,0x9CD5B016,0x9CE9,0x4e0a,0x89,0x02,0x19,0x6D,0x11,0x36,0x05,0x36);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9CD5B016-9CE9-4e0a-8902-196D11360536")
    IAdditionalBlockTuning : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DocumentName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Use( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Use( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FirstOnSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FirstOnSheet( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sections( 
            /* [retval][out] */ IAdditionalBlockSectionTunings __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionalBlockTuningVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAdditionalBlockTuning __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAdditionalBlockTuning __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentName )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DocumentName )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Use )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Use )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FirstOnSheet )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FirstOnSheet )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sections )( 
            IAdditionalBlockTuning __RPC_FAR * This,
            /* [retval][out] */ IAdditionalBlockSectionTunings __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } IAdditionalBlockTuningVtbl;

    interface IAdditionalBlockTuning
    {
        CONST_VTBL struct IAdditionalBlockTuningVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAdditionalBlockTuning_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAdditionalBlockTuning_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAdditionalBlockTuning_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAdditionalBlockTuning_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAdditionalBlockTuning_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAdditionalBlockTuning_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAdditionalBlockTuning_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAdditionalBlockTuning_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAdditionalBlockTuning_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAdditionalBlockTuning_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAdditionalBlockTuning_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAdditionalBlockTuning_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define IAdditionalBlockTuning_get_DocumentName(This,pVal)	\
    (This)->lpVtbl -> get_DocumentName(This,pVal)

#define IAdditionalBlockTuning_put_DocumentName(This,Val)	\
    (This)->lpVtbl -> put_DocumentName(This,Val)

#define IAdditionalBlockTuning_get_Use(This,pVal)	\
    (This)->lpVtbl -> get_Use(This,pVal)

#define IAdditionalBlockTuning_put_Use(This,Val)	\
    (This)->lpVtbl -> put_Use(This,Val)

#define IAdditionalBlockTuning_get_FirstOnSheet(This,pVal)	\
    (This)->lpVtbl -> get_FirstOnSheet(This,pVal)

#define IAdditionalBlockTuning_put_FirstOnSheet(This,Val)	\
    (This)->lpVtbl -> put_FirstOnSheet(This,Val)

#define IAdditionalBlockTuning_get_Sections(This,pVal)	\
    (This)->lpVtbl -> get_Sections(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_get_Number_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockTuning_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_get_DocumentName_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockTuning_get_DocumentName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_put_DocumentName_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IAdditionalBlockTuning_put_DocumentName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_get_Use_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockTuning_get_Use_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_put_Use_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IAdditionalBlockTuning_put_Use_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_get_FirstOnSheet_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockTuning_get_FirstOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_put_FirstOnSheet_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IAdditionalBlockTuning_put_FirstOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockTuning_get_Sections_Proxy( 
    IAdditionalBlockTuning __RPC_FAR * This,
    /* [retval][out] */ IAdditionalBlockSectionTunings __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockTuning_get_Sections_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAdditionalBlockTuning_INTERFACE_DEFINED__ */


#ifndef __IAdditionalBlockSectionTunings_INTERFACE_DEFINED__
#define __IAdditionalBlockSectionTunings_INTERFACE_DEFINED__

/* interface IAdditionalBlockSectionTunings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAdditionalBlockSectionTunings,0x43EFA203,0xF956,0x43d6,0xB6,0x03,0x87,0x80,0x7D,0xDE,0xFD,0x0A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("43EFA203-F956-43d6-B603-87807DDEFD0A")
    IAdditionalBlockSectionTunings : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAdditionalBlockSectionTuning __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionalBlockSectionTuningsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAdditionalBlockSectionTunings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAdditionalBlockSectionTuning __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAdditionalBlockSectionTuningsVtbl;

    interface IAdditionalBlockSectionTunings
    {
        CONST_VTBL struct IAdditionalBlockSectionTuningsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAdditionalBlockSectionTunings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAdditionalBlockSectionTunings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAdditionalBlockSectionTunings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAdditionalBlockSectionTunings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAdditionalBlockSectionTunings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAdditionalBlockSectionTunings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAdditionalBlockSectionTunings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAdditionalBlockSectionTunings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAdditionalBlockSectionTunings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAdditionalBlockSectionTunings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAdditionalBlockSectionTunings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAdditionalBlockSectionTunings_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAdditionalBlockSectionTunings_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAdditionalBlockSectionTunings_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockSectionTunings_get_Item_Proxy( 
    IAdditionalBlockSectionTunings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAdditionalBlockSectionTuning __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAdditionalBlockSectionTunings_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAdditionalBlockSectionTunings_INTERFACE_DEFINED__ */


#ifndef __IAdditionalBlockSectionTuning_INTERFACE_DEFINED__
#define __IAdditionalBlockSectionTuning_INTERFACE_DEFINED__

/* interface IAdditionalBlockSectionTuning */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAdditionalBlockSectionTuning,0xE04B8464,0xC8D6,0x4bac,0x99,0xB5,0xAE,0x79,0xEB,0xBD,0xB2,0x05);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E04B8464-C8D6-4bac-99B5-AE79EBBDB205")
    IAdditionalBlockSectionTuning : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Use( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Use( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionalBlockSectionTuningVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Use )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Use )( 
            IAdditionalBlockSectionTuning __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        END_INTERFACE
    } IAdditionalBlockSectionTuningVtbl;

    interface IAdditionalBlockSectionTuning
    {
        CONST_VTBL struct IAdditionalBlockSectionTuningVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAdditionalBlockSectionTuning_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAdditionalBlockSectionTuning_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAdditionalBlockSectionTuning_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAdditionalBlockSectionTuning_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAdditionalBlockSectionTuning_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAdditionalBlockSectionTuning_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAdditionalBlockSectionTuning_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAdditionalBlockSectionTuning_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAdditionalBlockSectionTuning_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAdditionalBlockSectionTuning_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAdditionalBlockSectionTuning_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAdditionalBlockSectionTuning_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define IAdditionalBlockSectionTuning_get_Use(This,pVal)	\
    (This)->lpVtbl -> get_Use(This,pVal)

#define IAdditionalBlockSectionTuning_put_Use(This,Val)	\
    (This)->lpVtbl -> put_Use(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockSectionTuning_get_Number_Proxy( 
    IAdditionalBlockSectionTuning __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockSectionTuning_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockSectionTuning_get_Use_Proxy( 
    IAdditionalBlockSectionTuning __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IAdditionalBlockSectionTuning_get_Use_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAdditionalBlockSectionTuning_put_Use_Proxy( 
    IAdditionalBlockSectionTuning __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IAdditionalBlockSectionTuning_put_Use_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAdditionalBlockSectionTuning_INTERFACE_DEFINED__ */


#ifndef __ISpecificationBaseObjects_INTERFACE_DEFINED__
#define __ISpecificationBaseObjects_INTERFACE_DEFINED__

/* interface ISpecificationBaseObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationBaseObjects,0xB2B97D19,0x3A0B,0x4c9f,0xA6,0xAC,0xDE,0xFF,0xAF,0xE0,0xD1,0xC2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B2B97D19-3A0B-4c9f-A6AC-DEFFAFE0D1C2")
    ISpecificationBaseObjects : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ long SectionNumb,
            /* [in] */ double AttrNumb,
            /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSpecificationObjectsForGeom( 
            /* [in] */ VARIANT PGeom,
            /* [in] */ VARIANT_BOOL Equal,
            /* [in] */ long SectionNumb,
            /* [in] */ double AttrNumb,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationBaseObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationBaseObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationBaseObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ long SectionNumb,
            /* [in] */ double AttrNumb,
            /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSpecificationObjectsForGeom )( 
            ISpecificationBaseObjects __RPC_FAR * This,
            /* [in] */ VARIANT PGeom,
            /* [in] */ VARIANT_BOOL Equal,
            /* [in] */ long SectionNumb,
            /* [in] */ double AttrNumb,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        END_INTERFACE
    } ISpecificationBaseObjectsVtbl;

    interface ISpecificationBaseObjects
    {
        CONST_VTBL struct ISpecificationBaseObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationBaseObjects_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationBaseObjects_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationBaseObjects_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationBaseObjects_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationBaseObjects_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationBaseObjects_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationBaseObjects_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationBaseObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationBaseObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationBaseObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationBaseObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationBaseObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationBaseObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationBaseObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ISpecificationBaseObjects_Add(This,SectionNumb,AttrNumb,Result)	\
    (This)->lpVtbl -> Add(This,SectionNumb,AttrNumb,Result)

#define ISpecificationBaseObjects_GetSpecificationObjectsForGeom(This,PGeom,Equal,SectionNumb,AttrNumb,PVal)	\
    (This)->lpVtbl -> GetSpecificationObjectsForGeom(This,PGeom,Equal,SectionNumb,AttrNumb,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObjects_get_Item_Proxy( 
    ISpecificationBaseObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationBaseObjects_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObjects_Add_Proxy( 
    ISpecificationBaseObjects __RPC_FAR * This,
    /* [in] */ long SectionNumb,
    /* [in] */ double AttrNumb,
    /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationBaseObjects_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObjects_GetSpecificationObjectsForGeom_Proxy( 
    ISpecificationBaseObjects __RPC_FAR * This,
    /* [in] */ VARIANT PGeom,
    /* [in] */ VARIANT_BOOL Equal,
    /* [in] */ long SectionNumb,
    /* [in] */ double AttrNumb,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObjects_GetSpecificationObjectsForGeom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationBaseObjects_INTERFACE_DEFINED__ */


#ifndef __ISpecificationCommentObjects_INTERFACE_DEFINED__
#define __ISpecificationCommentObjects_INTERFACE_DEFINED__

/* interface ISpecificationCommentObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationCommentObjects,0xB8BD0FC7,0xAB2B,0x4e7a,0x8E,0xC2,0x82,0x06,0x0D,0x7D,0x29,0xA7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B8BD0FC7-AB2B-4e7a-8EC2-82060D7D29A7")
    ISpecificationCommentObjects : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationCommentObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ long SectionNamb,
            /* [retval][out] */ ISpecificationCommentObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Attach( 
            /* [in] */ ISpecificationCommentObject __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Detach( 
            /* [in] */ ISpecificationCommentObject __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationCommentObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationCommentObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationCommentObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationCommentObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ long SectionNamb,
            /* [retval][out] */ ISpecificationCommentObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Attach )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ ISpecificationCommentObject __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Detach )( 
            ISpecificationCommentObjects __RPC_FAR * This,
            /* [in] */ ISpecificationCommentObject __RPC_FAR *PVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationCommentObjectsVtbl;

    interface ISpecificationCommentObjects
    {
        CONST_VTBL struct ISpecificationCommentObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationCommentObjects_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationCommentObjects_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationCommentObjects_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationCommentObjects_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationCommentObjects_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationCommentObjects_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationCommentObjects_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationCommentObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationCommentObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationCommentObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationCommentObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationCommentObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationCommentObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationCommentObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ISpecificationCommentObjects_Add(This,SectionNamb,Result)	\
    (This)->lpVtbl -> Add(This,SectionNamb,Result)

#define ISpecificationCommentObjects_Attach(This,PVal,Result)	\
    (This)->lpVtbl -> Attach(This,PVal,Result)

#define ISpecificationCommentObjects_Detach(This,PVal,Result)	\
    (This)->lpVtbl -> Detach(This,PVal,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObjects_get_Item_Proxy( 
    ISpecificationCommentObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationCommentObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationCommentObjects_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObjects_Add_Proxy( 
    ISpecificationCommentObjects __RPC_FAR * This,
    /* [in] */ long SectionNamb,
    /* [retval][out] */ ISpecificationCommentObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationCommentObjects_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObjects_Attach_Proxy( 
    ISpecificationCommentObjects __RPC_FAR * This,
    /* [in] */ ISpecificationCommentObject __RPC_FAR *PVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpecificationCommentObjects_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObjects_Detach_Proxy( 
    ISpecificationCommentObjects __RPC_FAR * This,
    /* [in] */ ISpecificationCommentObject __RPC_FAR *PVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpecificationCommentObjects_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationCommentObjects_INTERFACE_DEFINED__ */


#ifndef __ISpecificationObject_INTERFACE_DEFINED__
#define __ISpecificationObject_INTERFACE_DEFINED__

/* interface ISpecificationObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationObject,0x72EB4E8E,0x7952,0x4b36,0x85,0x2B,0x48,0x16,0xB7,0xB5,0xAF,0xEE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("72EB4E8E-7952-4b36-852B-4816B7B5AFEE")
    ISpecificationObject : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectType( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Section( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Subsection( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Subsection( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalSection( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AdditionalSection( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalBlock( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AdditionalBlock( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NestedSection( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NestedSection( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NestedBlock( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NestedBlock( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockNumberByIndex( 
            /* [in] */ long Val,
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UniqueNumber( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectStateEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FirstOnSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FirstOnSheet( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IncrementPosition( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_IncrementPosition( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Columns( 
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalColumns( 
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttachedDocuments( 
            /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Edit( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectType )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Section )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Subsection )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Subsection )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalSection )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalSection )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlock )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalBlock )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestedSection )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NestedSection )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestedBlock )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NestedBlock )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockNumberByIndex )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ long Val,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UniqueNumber )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_State )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectStateEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FirstOnSheet )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FirstOnSheet )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IncrementPosition )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IncrementPosition )( 
            ISpecificationObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalColumns )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttachedDocuments )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Edit )( 
            ISpecificationObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        END_INTERFACE
    } ISpecificationObjectVtbl;

    interface ISpecificationObject
    {
        CONST_VTBL struct ISpecificationObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationObject_get_ObjectType(This,pVal)	\
    (This)->lpVtbl -> get_ObjectType(This,pVal)

#define ISpecificationObject_get_Section(This,pVal)	\
    (This)->lpVtbl -> get_Section(This,pVal)

#define ISpecificationObject_get_Subsection(This,pVal)	\
    (This)->lpVtbl -> get_Subsection(This,pVal)

#define ISpecificationObject_put_Subsection(This,Val)	\
    (This)->lpVtbl -> put_Subsection(This,Val)

#define ISpecificationObject_get_AdditionalSection(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalSection(This,pVal)

#define ISpecificationObject_put_AdditionalSection(This,Val)	\
    (This)->lpVtbl -> put_AdditionalSection(This,Val)

#define ISpecificationObject_get_AdditionalBlock(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlock(This,pVal)

#define ISpecificationObject_put_AdditionalBlock(This,Val)	\
    (This)->lpVtbl -> put_AdditionalBlock(This,Val)

#define ISpecificationObject_get_NestedSection(This,pVal)	\
    (This)->lpVtbl -> get_NestedSection(This,pVal)

#define ISpecificationObject_put_NestedSection(This,Val)	\
    (This)->lpVtbl -> put_NestedSection(This,Val)

#define ISpecificationObject_get_NestedBlock(This,pVal)	\
    (This)->lpVtbl -> get_NestedBlock(This,pVal)

#define ISpecificationObject_put_NestedBlock(This,Val)	\
    (This)->lpVtbl -> put_NestedBlock(This,Val)

#define ISpecificationObject_get_BlockNumberByIndex(This,Val,pVal)	\
    (This)->lpVtbl -> get_BlockNumberByIndex(This,Val,pVal)

#define ISpecificationObject_get_UniqueNumber(This,pVal)	\
    (This)->lpVtbl -> get_UniqueNumber(This,pVal)

#define ISpecificationObject_get_State(This,pVal)	\
    (This)->lpVtbl -> get_State(This,pVal)

#define ISpecificationObject_get_FirstOnSheet(This,pVal)	\
    (This)->lpVtbl -> get_FirstOnSheet(This,pVal)

#define ISpecificationObject_put_FirstOnSheet(This,Val)	\
    (This)->lpVtbl -> put_FirstOnSheet(This,Val)

#define ISpecificationObject_get_IncrementPosition(This,pVal)	\
    (This)->lpVtbl -> get_IncrementPosition(This,pVal)

#define ISpecificationObject_put_IncrementPosition(This,Val)	\
    (This)->lpVtbl -> put_IncrementPosition(This,Val)

#define ISpecificationObject_get_Columns(This,pVal)	\
    (This)->lpVtbl -> get_Columns(This,pVal)

#define ISpecificationObject_get_AdditionalColumns(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalColumns(This,pVal)

#define ISpecificationObject_get_AttachedDocuments(This,pVal)	\
    (This)->lpVtbl -> get_AttachedDocuments(This,pVal)

#define ISpecificationObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ISpecificationObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ISpecificationObject_Edit(This,PRes)	\
    (This)->lpVtbl -> Edit(This,PRes)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_ObjectType_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationObjectTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_ObjectType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_Section_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_Section_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_Subsection_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_Subsection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_Subsection_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationObject_put_Subsection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_AdditionalSection_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_AdditionalSection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_AdditionalSection_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationObject_put_AdditionalSection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_AdditionalBlock_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_AdditionalBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_AdditionalBlock_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationObject_put_AdditionalBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_NestedSection_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_NestedSection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_NestedSection_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationObject_put_NestedSection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_NestedBlock_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_NestedBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_NestedBlock_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationObject_put_NestedBlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_BlockNumberByIndex_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ long Val,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_BlockNumberByIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_UniqueNumber_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_UniqueNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_State_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationObjectStateEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_State_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_FirstOnSheet_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_FirstOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_FirstOnSheet_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationObject_put_FirstOnSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_IncrementPosition_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_IncrementPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_put_IncrementPosition_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationObject_put_IncrementPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_Columns_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_Columns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_AdditionalColumns_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_AdditionalColumns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_get_AttachedDocuments_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationObject_get_AttachedDocuments_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_Update_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ISpecificationObject_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_Delete_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ISpecificationObject_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationObject_Edit_Proxy( 
    ISpecificationObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ISpecificationObject_Edit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationObject_INTERFACE_DEFINED__ */


#ifndef __ISpecificationBaseObject_INTERFACE_DEFINED__
#define __ISpecificationBaseObject_INTERFACE_DEFINED__

/* interface ISpecificationBaseObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationBaseObject,0x49994ED8,0x96BA,0x4d9d,0xB6,0x42,0x5F,0x0F,0x1E,0x3F,0xED,0x16);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("49994ED8-96BA-4d9d-B642-5F0F1E3FED16")
    ISpecificationBaseObject : public ISpecificationObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Draw( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Draw( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawPosition( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawPosition( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Performance( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Performance( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CommentObjects( 
            /* [retval][out] */ ISpecificationCommentObjects __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Documents( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeNumber( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AttributeNumber( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SummaryCount( 
            /* [in] */ long ColumnTypeNumber,
            /* [in] */ long BlockNumber,
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMaterial( 
            /* [in] */ BSTR Material,
            /* [in] */ double Density,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Geometry( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Geometry( 
            VARIANT PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IncludeGeometry( 
            /* [in] */ VARIANT PVal,
            /* [in] */ VARIANT_BOOL FillText,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearGeometry( 
            /* [in] */ VARIANT_BOOL ClearGeometry,
            /* [in] */ VARIANT_BOOL ClearLeaders,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationBaseObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationBaseObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationBaseObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectType )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Section )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Subsection )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Subsection )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalSection )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalSection )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlock )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalBlock )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestedSection )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NestedSection )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestedBlock )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NestedBlock )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockNumberByIndex )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long Val,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UniqueNumber )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_State )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectStateEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FirstOnSheet )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FirstOnSheet )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IncrementPosition )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IncrementPosition )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalColumns )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttachedDocuments )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Edit )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Draw )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Draw )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawPosition )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawPosition )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Performance )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Performance )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CommentObjects )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationCommentObjects __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Documents )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeNumber )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeNumber )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SummaryCount )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ long ColumnTypeNumber,
            /* [in] */ long BlockNumber,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMaterial )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ BSTR Material,
            /* [in] */ double Density,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Geometry )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Geometry )( 
            ISpecificationBaseObject __RPC_FAR * This,
            VARIANT PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IncludeGeometry )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT PVal,
            /* [in] */ VARIANT_BOOL FillText,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearGeometry )( 
            ISpecificationBaseObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ClearGeometry,
            /* [in] */ VARIANT_BOOL ClearLeaders,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationBaseObjectVtbl;

    interface ISpecificationBaseObject
    {
        CONST_VTBL struct ISpecificationBaseObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationBaseObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationBaseObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationBaseObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationBaseObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationBaseObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationBaseObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationBaseObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationBaseObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationBaseObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationBaseObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationBaseObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationBaseObject_get_ObjectType(This,pVal)	\
    (This)->lpVtbl -> get_ObjectType(This,pVal)

#define ISpecificationBaseObject_get_Section(This,pVal)	\
    (This)->lpVtbl -> get_Section(This,pVal)

#define ISpecificationBaseObject_get_Subsection(This,pVal)	\
    (This)->lpVtbl -> get_Subsection(This,pVal)

#define ISpecificationBaseObject_put_Subsection(This,Val)	\
    (This)->lpVtbl -> put_Subsection(This,Val)

#define ISpecificationBaseObject_get_AdditionalSection(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalSection(This,pVal)

#define ISpecificationBaseObject_put_AdditionalSection(This,Val)	\
    (This)->lpVtbl -> put_AdditionalSection(This,Val)

#define ISpecificationBaseObject_get_AdditionalBlock(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlock(This,pVal)

#define ISpecificationBaseObject_put_AdditionalBlock(This,Val)	\
    (This)->lpVtbl -> put_AdditionalBlock(This,Val)

#define ISpecificationBaseObject_get_NestedSection(This,pVal)	\
    (This)->lpVtbl -> get_NestedSection(This,pVal)

#define ISpecificationBaseObject_put_NestedSection(This,Val)	\
    (This)->lpVtbl -> put_NestedSection(This,Val)

#define ISpecificationBaseObject_get_NestedBlock(This,pVal)	\
    (This)->lpVtbl -> get_NestedBlock(This,pVal)

#define ISpecificationBaseObject_put_NestedBlock(This,Val)	\
    (This)->lpVtbl -> put_NestedBlock(This,Val)

#define ISpecificationBaseObject_get_BlockNumberByIndex(This,Val,pVal)	\
    (This)->lpVtbl -> get_BlockNumberByIndex(This,Val,pVal)

#define ISpecificationBaseObject_get_UniqueNumber(This,pVal)	\
    (This)->lpVtbl -> get_UniqueNumber(This,pVal)

#define ISpecificationBaseObject_get_State(This,pVal)	\
    (This)->lpVtbl -> get_State(This,pVal)

#define ISpecificationBaseObject_get_FirstOnSheet(This,pVal)	\
    (This)->lpVtbl -> get_FirstOnSheet(This,pVal)

#define ISpecificationBaseObject_put_FirstOnSheet(This,Val)	\
    (This)->lpVtbl -> put_FirstOnSheet(This,Val)

#define ISpecificationBaseObject_get_IncrementPosition(This,pVal)	\
    (This)->lpVtbl -> get_IncrementPosition(This,pVal)

#define ISpecificationBaseObject_put_IncrementPosition(This,Val)	\
    (This)->lpVtbl -> put_IncrementPosition(This,Val)

#define ISpecificationBaseObject_get_Columns(This,pVal)	\
    (This)->lpVtbl -> get_Columns(This,pVal)

#define ISpecificationBaseObject_get_AdditionalColumns(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalColumns(This,pVal)

#define ISpecificationBaseObject_get_AttachedDocuments(This,pVal)	\
    (This)->lpVtbl -> get_AttachedDocuments(This,pVal)

#define ISpecificationBaseObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ISpecificationBaseObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ISpecificationBaseObject_Edit(This,PRes)	\
    (This)->lpVtbl -> Edit(This,PRes)


#define ISpecificationBaseObject_get_Draw(This,PVal)	\
    (This)->lpVtbl -> get_Draw(This,PVal)

#define ISpecificationBaseObject_put_Draw(This,Val)	\
    (This)->lpVtbl -> put_Draw(This,Val)

#define ISpecificationBaseObject_get_DrawPosition(This,PVal)	\
    (This)->lpVtbl -> get_DrawPosition(This,PVal)

#define ISpecificationBaseObject_put_DrawPosition(This,Val)	\
    (This)->lpVtbl -> put_DrawPosition(This,Val)

#define ISpecificationBaseObject_get_Performance(This,PVal)	\
    (This)->lpVtbl -> get_Performance(This,PVal)

#define ISpecificationBaseObject_put_Performance(This,Val)	\
    (This)->lpVtbl -> put_Performance(This,Val)

#define ISpecificationBaseObject_get_CommentObjects(This,Result)	\
    (This)->lpVtbl -> get_CommentObjects(This,Result)

#define ISpecificationBaseObject_get_Documents(This,PVal)	\
    (This)->lpVtbl -> get_Documents(This,PVal)

#define ISpecificationBaseObject_get_AttributeNumber(This,PVal)	\
    (This)->lpVtbl -> get_AttributeNumber(This,PVal)

#define ISpecificationBaseObject_put_AttributeNumber(This,Val)	\
    (This)->lpVtbl -> put_AttributeNumber(This,Val)

#define ISpecificationBaseObject_get_SummaryCount(This,ColumnTypeNumber,BlockNumber,pVal)	\
    (This)->lpVtbl -> get_SummaryCount(This,ColumnTypeNumber,BlockNumber,pVal)

#define ISpecificationBaseObject_SetMaterial(This,Material,Density,pVal)	\
    (This)->lpVtbl -> SetMaterial(This,Material,Density,pVal)

#define ISpecificationBaseObject_get_Geometry(This,PVal)	\
    (This)->lpVtbl -> get_Geometry(This,PVal)

#define ISpecificationBaseObject_put_Geometry(This,PVal)	\
    (This)->lpVtbl -> put_Geometry(This,PVal)

#define ISpecificationBaseObject_IncludeGeometry(This,PVal,FillText,Result)	\
    (This)->lpVtbl -> IncludeGeometry(This,PVal,FillText,Result)

#define ISpecificationBaseObject_ClearGeometry(This,ClearGeometry,ClearLeaders,Result)	\
    (This)->lpVtbl -> ClearGeometry(This,ClearGeometry,ClearLeaders,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_Draw_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObject_get_Draw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_put_Draw_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationBaseObject_put_Draw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_DrawPosition_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObject_get_DrawPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_put_DrawPosition_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationBaseObject_put_DrawPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_Performance_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObject_get_Performance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_put_Performance_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationBaseObject_put_Performance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_CommentObjects_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ ISpecificationCommentObjects __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationBaseObject_get_CommentObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_Documents_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObject_get_Documents_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_AttributeNumber_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObject_get_AttributeNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_put_AttributeNumber_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ISpecificationBaseObject_put_AttributeNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_SummaryCount_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ long ColumnTypeNumber,
    /* [in] */ long BlockNumber,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ISpecificationBaseObject_get_SummaryCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_SetMaterial_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ BSTR Material,
    /* [in] */ double Density,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ISpecificationBaseObject_SetMaterial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_get_Geometry_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISpecificationBaseObject_get_Geometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_put_Geometry_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    VARIANT PVal);


void __RPC_STUB ISpecificationBaseObject_put_Geometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_IncludeGeometry_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ VARIANT PVal,
    /* [in] */ VARIANT_BOOL FillText,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpecificationBaseObject_IncludeGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecificationBaseObject_ClearGeometry_Proxy( 
    ISpecificationBaseObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ClearGeometry,
    /* [in] */ VARIANT_BOOL ClearLeaders,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpecificationBaseObject_ClearGeometry_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationBaseObject_INTERFACE_DEFINED__ */


#ifndef __ISpecificationCommentObject_INTERFACE_DEFINED__
#define __ISpecificationCommentObject_INTERFACE_DEFINED__

/* interface ISpecificationCommentObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationCommentObject,0x3B6B80CA,0x2145,0x4184,0xB7,0x86,0x0C,0x57,0x1D,0xF5,0xAC,0xD7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3B6B80CA-2145-4184-B786-0C571DF5ACD7")
    ISpecificationCommentObject : public ISpecificationObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockNumber( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlockNumber( 
            /* [in] */ long Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationCommentObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationCommentObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationCommentObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectType )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Section )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Subsection )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Subsection )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalSection )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalSection )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalBlock )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalBlock )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestedSection )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NestedSection )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NestedBlock )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NestedBlock )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockNumberByIndex )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UniqueNumber )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_State )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationObjectStateEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FirstOnSheet )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FirstOnSheet )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IncrementPosition )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IncrementPosition )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Columns )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalColumns )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumns __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttachedDocuments )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ IAttachedDocuments __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Edit )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockNumber )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BlockNumber )( 
            ISpecificationCommentObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        END_INTERFACE
    } ISpecificationCommentObjectVtbl;

    interface ISpecificationCommentObject
    {
        CONST_VTBL struct ISpecificationCommentObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationCommentObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationCommentObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationCommentObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationCommentObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationCommentObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationCommentObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationCommentObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationCommentObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationCommentObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationCommentObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationCommentObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationCommentObject_get_ObjectType(This,pVal)	\
    (This)->lpVtbl -> get_ObjectType(This,pVal)

#define ISpecificationCommentObject_get_Section(This,pVal)	\
    (This)->lpVtbl -> get_Section(This,pVal)

#define ISpecificationCommentObject_get_Subsection(This,pVal)	\
    (This)->lpVtbl -> get_Subsection(This,pVal)

#define ISpecificationCommentObject_put_Subsection(This,Val)	\
    (This)->lpVtbl -> put_Subsection(This,Val)

#define ISpecificationCommentObject_get_AdditionalSection(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalSection(This,pVal)

#define ISpecificationCommentObject_put_AdditionalSection(This,Val)	\
    (This)->lpVtbl -> put_AdditionalSection(This,Val)

#define ISpecificationCommentObject_get_AdditionalBlock(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalBlock(This,pVal)

#define ISpecificationCommentObject_put_AdditionalBlock(This,Val)	\
    (This)->lpVtbl -> put_AdditionalBlock(This,Val)

#define ISpecificationCommentObject_get_NestedSection(This,pVal)	\
    (This)->lpVtbl -> get_NestedSection(This,pVal)

#define ISpecificationCommentObject_put_NestedSection(This,Val)	\
    (This)->lpVtbl -> put_NestedSection(This,Val)

#define ISpecificationCommentObject_get_NestedBlock(This,pVal)	\
    (This)->lpVtbl -> get_NestedBlock(This,pVal)

#define ISpecificationCommentObject_put_NestedBlock(This,Val)	\
    (This)->lpVtbl -> put_NestedBlock(This,Val)

#define ISpecificationCommentObject_get_BlockNumberByIndex(This,Val,pVal)	\
    (This)->lpVtbl -> get_BlockNumberByIndex(This,Val,pVal)

#define ISpecificationCommentObject_get_UniqueNumber(This,pVal)	\
    (This)->lpVtbl -> get_UniqueNumber(This,pVal)

#define ISpecificationCommentObject_get_State(This,pVal)	\
    (This)->lpVtbl -> get_State(This,pVal)

#define ISpecificationCommentObject_get_FirstOnSheet(This,pVal)	\
    (This)->lpVtbl -> get_FirstOnSheet(This,pVal)

#define ISpecificationCommentObject_put_FirstOnSheet(This,Val)	\
    (This)->lpVtbl -> put_FirstOnSheet(This,Val)

#define ISpecificationCommentObject_get_IncrementPosition(This,pVal)	\
    (This)->lpVtbl -> get_IncrementPosition(This,pVal)

#define ISpecificationCommentObject_put_IncrementPosition(This,Val)	\
    (This)->lpVtbl -> put_IncrementPosition(This,Val)

#define ISpecificationCommentObject_get_Columns(This,pVal)	\
    (This)->lpVtbl -> get_Columns(This,pVal)

#define ISpecificationCommentObject_get_AdditionalColumns(This,pVal)	\
    (This)->lpVtbl -> get_AdditionalColumns(This,pVal)

#define ISpecificationCommentObject_get_AttachedDocuments(This,pVal)	\
    (This)->lpVtbl -> get_AttachedDocuments(This,pVal)

#define ISpecificationCommentObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ISpecificationCommentObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ISpecificationCommentObject_Edit(This,PRes)	\
    (This)->lpVtbl -> Edit(This,PRes)


#define ISpecificationCommentObject_get_BaseObject(This,Result)	\
    (This)->lpVtbl -> get_BaseObject(This,Result)

#define ISpecificationCommentObject_get_BlockNumber(This,pVal)	\
    (This)->lpVtbl -> get_BlockNumber(This,pVal)

#define ISpecificationCommentObject_put_BlockNumber(This,Val)	\
    (This)->lpVtbl -> put_BlockNumber(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObject_get_BaseObject_Proxy( 
    ISpecificationCommentObject __RPC_FAR * This,
    /* [retval][out] */ ISpecificationBaseObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationCommentObject_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObject_get_BlockNumber_Proxy( 
    ISpecificationCommentObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationCommentObject_get_BlockNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationCommentObject_put_BlockNumber_Proxy( 
    ISpecificationCommentObject __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpecificationCommentObject_put_BlockNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationCommentObject_INTERFACE_DEFINED__ */


#ifndef __ISpecificationColumns_INTERFACE_DEFINED__
#define __ISpecificationColumns_INTERFACE_DEFINED__

/* interface ISpecificationColumns */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationColumns,0x9F44BF03,0xDE25,0x4dde,0xAD,0xA0,0x92,0x38,0x41,0x99,0xC1,0x00);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9F44BF03-DE25-4dde-ADA0-92384199C100")
    ISpecificationColumns : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationColumn __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Column( 
            /* [in] */ /* external definition not present */ ksSpecificationColumnTypeEnum ColumnType,
            /* [in] */ long ColumnNumber,
            /* [in] */ long BlockNumber,
            /* [retval][out] */ ISpecificationColumn __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationColumnsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationColumns __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationColumns __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationColumn __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Column )( 
            ISpecificationColumns __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksSpecificationColumnTypeEnum ColumnType,
            /* [in] */ long ColumnNumber,
            /* [in] */ long BlockNumber,
            /* [retval][out] */ ISpecificationColumn __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationColumnsVtbl;

    interface ISpecificationColumns
    {
        CONST_VTBL struct ISpecificationColumnsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationColumns_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationColumns_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationColumns_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationColumns_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationColumns_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationColumns_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationColumns_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationColumns_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationColumns_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationColumns_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationColumns_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationColumns_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationColumns_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationColumns_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ISpecificationColumns_get_Column(This,ColumnType,ColumnNumber,BlockNumber,Result)	\
    (This)->lpVtbl -> get_Column(This,ColumnType,ColumnNumber,BlockNumber,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumns_get_Item_Proxy( 
    ISpecificationColumns __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationColumn __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationColumns_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumns_get_Column_Proxy( 
    ISpecificationColumns __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksSpecificationColumnTypeEnum ColumnType,
    /* [in] */ long ColumnNumber,
    /* [in] */ long BlockNumber,
    /* [retval][out] */ ISpecificationColumn __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationColumns_get_Column_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationColumns_INTERFACE_DEFINED__ */


#ifndef __ISpecificationColumn_INTERFACE_DEFINED__
#define __ISpecificationColumn_INTERFACE_DEFINED__

/* interface ISpecificationColumn */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationColumn,0x3ECFB777,0x2645,0x42b5,0xA6,0xED,0x11,0x16,0x88,0x43,0x3B,0x26);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3ECFB777-2645-42b5-A6ED-111688433B26")
    ISpecificationColumn : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnType( 
            /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnTypeNumber( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlockNumber( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ValueType( 
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnItems( 
            /* [retval][out] */ ISpecificationColumnItems __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeNumber( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AttributeNumber( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationColumnVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationColumn __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationColumn __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnType )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnTypeNumber )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlockNumber )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ValueType )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnItems )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ ISpecificationColumnItems __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeNumber )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeNumber )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            ISpecificationColumn __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } ISpecificationColumnVtbl;

    interface ISpecificationColumn
    {
        CONST_VTBL struct ISpecificationColumnVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationColumn_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationColumn_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationColumn_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationColumn_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationColumn_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationColumn_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationColumn_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationColumn_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationColumn_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationColumn_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationColumn_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationColumn_get_ColumnType(This,pVal)	\
    (This)->lpVtbl -> get_ColumnType(This,pVal)

#define ISpecificationColumn_get_ColumnTypeNumber(This,pVal)	\
    (This)->lpVtbl -> get_ColumnTypeNumber(This,pVal)

#define ISpecificationColumn_get_BlockNumber(This,pVal)	\
    (This)->lpVtbl -> get_BlockNumber(This,pVal)

#define ISpecificationColumn_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define ISpecificationColumn_get_ValueType(This,pVal)	\
    (This)->lpVtbl -> get_ValueType(This,pVal)

#define ISpecificationColumn_get_ColumnItems(This,pVal)	\
    (This)->lpVtbl -> get_ColumnItems(This,pVal)

#define ISpecificationColumn_get_AttributeNumber(This,PVal)	\
    (This)->lpVtbl -> get_AttributeNumber(This,PVal)

#define ISpecificationColumn_put_AttributeNumber(This,Val)	\
    (This)->lpVtbl -> put_AttributeNumber(This,Val)

#define ISpecificationColumn_get_Text(This,pVal)	\
    (This)->lpVtbl -> get_Text(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_ColumnType_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksSpecificationColumnTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_ColumnType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_ColumnTypeNumber_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_ColumnTypeNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_BlockNumber_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_BlockNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_Number_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_ValueType_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_ValueType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_ColumnItems_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ ISpecificationColumnItems __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_ColumnItems_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_AttributeNumber_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumn_get_AttributeNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_put_AttributeNumber_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ISpecificationColumn_put_AttributeNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumn_get_Text_Proxy( 
    ISpecificationColumn __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ISpecificationColumn_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationColumn_INTERFACE_DEFINED__ */


#ifndef __ISpecificationColumnItems_INTERFACE_DEFINED__
#define __ISpecificationColumnItems_INTERFACE_DEFINED__

/* interface ISpecificationColumnItems */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationColumnItems,0xF4BAB79A,0x8A35,0x44d5,0xBE,0x44,0xC5,0x66,0xE4,0x44,0xF3,0x42);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F4BAB79A-8A35-44d5-BE44-C566E444F342")
    ISpecificationColumnItems : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationColumnItem __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationColumnItemsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationColumnItems __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationColumnItems __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISpecificationColumnItems __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpecificationColumnItem __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecificationColumnItemsVtbl;

    interface ISpecificationColumnItems
    {
        CONST_VTBL struct ISpecificationColumnItemsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationColumnItems_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationColumnItems_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationColumnItems_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationColumnItems_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationColumnItems_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationColumnItems_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationColumnItems_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationColumnItems_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationColumnItems_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationColumnItems_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationColumnItems_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationColumnItems_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISpecificationColumnItems_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISpecificationColumnItems_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItems_get_Item_Proxy( 
    ISpecificationColumnItems __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpecificationColumnItem __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpecificationColumnItems_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationColumnItems_INTERFACE_DEFINED__ */


#ifndef __ISpecificationColumnItem_INTERFACE_DEFINED__
#define __ISpecificationColumnItem_INTERFACE_DEFINED__

/* interface ISpecificationColumnItem */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecificationColumnItem,0x2BABDD01,0xEACA,0x4137,0x97,0x49,0x25,0xB8,0xC5,0xE2,0x30,0xEE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2BABDD01-EACA-4137-9749-25B8C5E230EE")
    ISpecificationColumnItem : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ValueType( 
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Key( 
            /* [retval][out] */ short __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Key( 
            /* [in] */ short Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ VARIANT Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecificationColumnItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecificationColumnItem __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecificationColumnItem __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ValueType )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Key )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ short __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Key )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ short Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            ISpecificationColumnItem __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        END_INTERFACE
    } ISpecificationColumnItemVtbl;

    interface ISpecificationColumnItem
    {
        CONST_VTBL struct ISpecificationColumnItemVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecificationColumnItem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecificationColumnItem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecificationColumnItem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecificationColumnItem_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecificationColumnItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecificationColumnItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecificationColumnItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecificationColumnItem_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecificationColumnItem_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecificationColumnItem_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecificationColumnItem_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecificationColumnItem_get_ValueType(This,PVal)	\
    (This)->lpVtbl -> get_ValueType(This,PVal)

#define ISpecificationColumnItem_get_Key(This,PVal)	\
    (This)->lpVtbl -> get_Key(This,PVal)

#define ISpecificationColumnItem_put_Key(This,Val)	\
    (This)->lpVtbl -> put_Key(This,Val)

#define ISpecificationColumnItem_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define ISpecificationColumnItem_put_Visible(This,Val)	\
    (This)->lpVtbl -> put_Visible(This,Val)

#define ISpecificationColumnItem_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define ISpecificationColumnItem_put_Value(This,Val)	\
    (This)->lpVtbl -> put_Value(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_get_ValueType_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksValueTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumnItem_get_ValueType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_get_Key_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [retval][out] */ short __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumnItem_get_Key_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_put_Key_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [in] */ short Val);


void __RPC_STUB ISpecificationColumnItem_put_Key_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_get_Visible_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumnItem_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_put_Visible_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecificationColumnItem_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_get_Value_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISpecificationColumnItem_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecificationColumnItem_put_Value_Proxy( 
    ISpecificationColumnItem __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB ISpecificationColumnItem_put_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecificationColumnItem_INTERFACE_DEFINED__ */


#ifndef __IAttachedDocuments_INTERFACE_DEFINED__
#define __IAttachedDocuments_INTERFACE_DEFINED__

/* interface IAttachedDocuments */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAttachedDocuments,0x81FAB1C5,0xF566,0x4d06,0x8D,0x3D,0x17,0xFF,0x01,0xD3,0x56,0x6F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("81FAB1C5-F566-4d06-8D3D-17FF01D3566F")
    IAttachedDocuments : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAttachedDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT_BOOL Transmit,
            /* [retval][out] */ IAttachedDocument __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAttachedDocumentsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAttachedDocuments __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAttachedDocuments __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAttachedDocument __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IAttachedDocuments __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ VARIANT_BOOL Transmit,
            /* [retval][out] */ IAttachedDocument __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAttachedDocumentsVtbl;

    interface IAttachedDocuments
    {
        CONST_VTBL struct IAttachedDocumentsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAttachedDocuments_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAttachedDocuments_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAttachedDocuments_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAttachedDocuments_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAttachedDocuments_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAttachedDocuments_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAttachedDocuments_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAttachedDocuments_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAttachedDocuments_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAttachedDocuments_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAttachedDocuments_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAttachedDocuments_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAttachedDocuments_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAttachedDocuments_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IAttachedDocuments_Add(This,Name,Transmit,Result)	\
    (This)->lpVtbl -> Add(This,Name,Transmit,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttachedDocuments_get_Item_Proxy( 
    IAttachedDocuments __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAttachedDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAttachedDocuments_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttachedDocuments_Add_Proxy( 
    IAttachedDocuments __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ VARIANT_BOOL Transmit,
    /* [retval][out] */ IAttachedDocument __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAttachedDocuments_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAttachedDocuments_INTERFACE_DEFINED__ */


#ifndef __IAttachedDocument_INTERFACE_DEFINED__
#define __IAttachedDocument_INTERFACE_DEFINED__

/* interface IAttachedDocument */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAttachedDocument,0x333E9E11,0xD161,0x49ae,0x97,0x91,0x8B,0xED,0xB5,0x8B,0x4C,0x78);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("333E9E11-D161-49ae-9791-8BEDB58B4C78")
    IAttachedDocument : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Transmit( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Transmit( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAttachedDocumentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAttachedDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAttachedDocument __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAttachedDocument __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAttachedDocument __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAttachedDocument __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAttachedDocument __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAttachedDocument __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Transmit )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Transmit )( 
            IAttachedDocument __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IAttachedDocument __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IAttachedDocument __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        END_INTERFACE
    } IAttachedDocumentVtbl;

    interface IAttachedDocument
    {
        CONST_VTBL struct IAttachedDocumentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAttachedDocument_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAttachedDocument_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAttachedDocument_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAttachedDocument_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAttachedDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAttachedDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAttachedDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAttachedDocument_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAttachedDocument_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAttachedDocument_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAttachedDocument_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAttachedDocument_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IAttachedDocument_get_Transmit(This,PVal)	\
    (This)->lpVtbl -> get_Transmit(This,PVal)

#define IAttachedDocument_put_Transmit(This,Val)	\
    (This)->lpVtbl -> put_Transmit(This,Val)

#define IAttachedDocument_get_Comment(This,PVal)	\
    (This)->lpVtbl -> get_Comment(This,PVal)

#define IAttachedDocument_put_Comment(This,Val)	\
    (This)->lpVtbl -> put_Comment(This,Val)

#define IAttachedDocument_Delete(This,pVal)	\
    (This)->lpVtbl -> Delete(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttachedDocument_get_Name_Proxy( 
    IAttachedDocument __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IAttachedDocument_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttachedDocument_get_Transmit_Proxy( 
    IAttachedDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAttachedDocument_get_Transmit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAttachedDocument_put_Transmit_Proxy( 
    IAttachedDocument __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IAttachedDocument_put_Transmit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAttachedDocument_get_Comment_Proxy( 
    IAttachedDocument __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IAttachedDocument_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAttachedDocument_put_Comment_Proxy( 
    IAttachedDocument __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IAttachedDocument_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAttachedDocument_Delete_Proxy( 
    IAttachedDocument __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IAttachedDocument_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAttachedDocument_INTERFACE_DEFINED__ */


#ifndef __ITextStyle_INTERFACE_DEFINED__
#define __ITextStyle_INTERFACE_DEFINED__

/* interface ITextStyle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITextStyle,0x7EA65CA0,0x420D,0x4e1d,0x8C,0x19,0x99,0x84,0x95,0xC4,0xDA,0x2F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7EA65CA0-420D-4e1d-8C19-998495C4DA2F")
    ITextStyle : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Number( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Align( 
            /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Align( 
            /* [in] */ /* external definition not present */ ksAlignEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IndentedLine( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_IndentedLine( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepBeforeParagraph( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepBeforeParagraph( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepAfterParagraph( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepAfterParagraph( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeftEdge( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeftEdge( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RightEdge( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RightEdge( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Extended( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Extended( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LinesCount( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LinesCount( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableLine1( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableLine1( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height1( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height1( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WidthFactor1( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WidthFactor1( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step1( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step1( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableLine2( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableLine2( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height2( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WidthFactor2( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WidthFactor2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step2( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EnableLine3( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EnableLine3( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height3( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height3( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WidthFactor3( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WidthFactor3( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step3( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step3( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Font( 
            /* [retval][out] */ ITextFont __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tabulators( 
            /* [retval][out] */ ITabulators __RPC_FAR *__RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITextStyleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITextStyle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITextStyle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITextStyle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Number )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Align )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Align )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAlignEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IndentedLine )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IndentedLine )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepBeforeParagraph )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepBeforeParagraph )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepAfterParagraph )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepAfterParagraph )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeftEdge )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeftEdge )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RightEdge )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RightEdge )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Extended )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Extended )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LinesCount )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LinesCount )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EnableLine1 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EnableLine1 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height1 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height1 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WidthFactor1 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WidthFactor1 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step1 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step1 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EnableLine2 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EnableLine2 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height2 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height2 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WidthFactor2 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WidthFactor2 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step2 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step2 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EnableLine3 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EnableLine3 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height3 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height3 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WidthFactor3 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WidthFactor3 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step3 )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step3 )( 
            ITextStyle __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Font )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ ITextFont __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tabulators )( 
            ITextStyle __RPC_FAR * This,
            /* [retval][out] */ ITabulators __RPC_FAR *__RPC_FAR *pVal);
        
        END_INTERFACE
    } ITextStyleVtbl;

    interface ITextStyle
    {
        CONST_VTBL struct ITextStyleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITextStyle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITextStyle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITextStyle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITextStyle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITextStyle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITextStyle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITextStyle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITextStyle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITextStyle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITextStyle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITextStyle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITextStyle_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define ITextStyle_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ITextStyle_get_Number(This,pVal)	\
    (This)->lpVtbl -> get_Number(This,pVal)

#define ITextStyle_put_Number(This,Val)	\
    (This)->lpVtbl -> put_Number(This,Val)

#define ITextStyle_get_Step(This,pVal)	\
    (This)->lpVtbl -> get_Step(This,pVal)

#define ITextStyle_put_Step(This,Val)	\
    (This)->lpVtbl -> put_Step(This,Val)

#define ITextStyle_get_Align(This,pVal)	\
    (This)->lpVtbl -> get_Align(This,pVal)

#define ITextStyle_put_Align(This,Val)	\
    (This)->lpVtbl -> put_Align(This,Val)

#define ITextStyle_get_IndentedLine(This,pVal)	\
    (This)->lpVtbl -> get_IndentedLine(This,pVal)

#define ITextStyle_put_IndentedLine(This,Val)	\
    (This)->lpVtbl -> put_IndentedLine(This,Val)

#define ITextStyle_get_StepBeforeParagraph(This,pVal)	\
    (This)->lpVtbl -> get_StepBeforeParagraph(This,pVal)

#define ITextStyle_put_StepBeforeParagraph(This,Val)	\
    (This)->lpVtbl -> put_StepBeforeParagraph(This,Val)

#define ITextStyle_get_StepAfterParagraph(This,pVal)	\
    (This)->lpVtbl -> get_StepAfterParagraph(This,pVal)

#define ITextStyle_put_StepAfterParagraph(This,Val)	\
    (This)->lpVtbl -> put_StepAfterParagraph(This,Val)

#define ITextStyle_get_LeftEdge(This,pVal)	\
    (This)->lpVtbl -> get_LeftEdge(This,pVal)

#define ITextStyle_put_LeftEdge(This,Val)	\
    (This)->lpVtbl -> put_LeftEdge(This,Val)

#define ITextStyle_get_RightEdge(This,pVal)	\
    (This)->lpVtbl -> get_RightEdge(This,pVal)

#define ITextStyle_put_RightEdge(This,Val)	\
    (This)->lpVtbl -> put_RightEdge(This,Val)

#define ITextStyle_get_Extended(This,pVal)	\
    (This)->lpVtbl -> get_Extended(This,pVal)

#define ITextStyle_put_Extended(This,Val)	\
    (This)->lpVtbl -> put_Extended(This,Val)

#define ITextStyle_get_LinesCount(This,pVal)	\
    (This)->lpVtbl -> get_LinesCount(This,pVal)

#define ITextStyle_put_LinesCount(This,Val)	\
    (This)->lpVtbl -> put_LinesCount(This,Val)

#define ITextStyle_get_EnableLine1(This,pVal)	\
    (This)->lpVtbl -> get_EnableLine1(This,pVal)

#define ITextStyle_put_EnableLine1(This,Val)	\
    (This)->lpVtbl -> put_EnableLine1(This,Val)

#define ITextStyle_get_Height1(This,pVal)	\
    (This)->lpVtbl -> get_Height1(This,pVal)

#define ITextStyle_put_Height1(This,Val)	\
    (This)->lpVtbl -> put_Height1(This,Val)

#define ITextStyle_get_WidthFactor1(This,pVal)	\
    (This)->lpVtbl -> get_WidthFactor1(This,pVal)

#define ITextStyle_put_WidthFactor1(This,Val)	\
    (This)->lpVtbl -> put_WidthFactor1(This,Val)

#define ITextStyle_get_Step1(This,pVal)	\
    (This)->lpVtbl -> get_Step1(This,pVal)

#define ITextStyle_put_Step1(This,Val)	\
    (This)->lpVtbl -> put_Step1(This,Val)

#define ITextStyle_get_EnableLine2(This,pVal)	\
    (This)->lpVtbl -> get_EnableLine2(This,pVal)

#define ITextStyle_put_EnableLine2(This,Val)	\
    (This)->lpVtbl -> put_EnableLine2(This,Val)

#define ITextStyle_get_Height2(This,pVal)	\
    (This)->lpVtbl -> get_Height2(This,pVal)

#define ITextStyle_put_Height2(This,Val)	\
    (This)->lpVtbl -> put_Height2(This,Val)

#define ITextStyle_get_WidthFactor2(This,pVal)	\
    (This)->lpVtbl -> get_WidthFactor2(This,pVal)

#define ITextStyle_put_WidthFactor2(This,Val)	\
    (This)->lpVtbl -> put_WidthFactor2(This,Val)

#define ITextStyle_get_Step2(This,pVal)	\
    (This)->lpVtbl -> get_Step2(This,pVal)

#define ITextStyle_put_Step2(This,Val)	\
    (This)->lpVtbl -> put_Step2(This,Val)

#define ITextStyle_get_EnableLine3(This,pVal)	\
    (This)->lpVtbl -> get_EnableLine3(This,pVal)

#define ITextStyle_put_EnableLine3(This,Val)	\
    (This)->lpVtbl -> put_EnableLine3(This,Val)

#define ITextStyle_get_Height3(This,pVal)	\
    (This)->lpVtbl -> get_Height3(This,pVal)

#define ITextStyle_put_Height3(This,Val)	\
    (This)->lpVtbl -> put_Height3(This,Val)

#define ITextStyle_get_WidthFactor3(This,pVal)	\
    (This)->lpVtbl -> get_WidthFactor3(This,pVal)

#define ITextStyle_put_WidthFactor3(This,Val)	\
    (This)->lpVtbl -> put_WidthFactor3(This,Val)

#define ITextStyle_get_Step3(This,pVal)	\
    (This)->lpVtbl -> get_Step3(This,pVal)

#define ITextStyle_put_Step3(This,Val)	\
    (This)->lpVtbl -> put_Step3(This,Val)

#define ITextStyle_get_Font(This,pVal)	\
    (This)->lpVtbl -> get_Font(This,pVal)

#define ITextStyle_get_Tabulators(This,pVal)	\
    (This)->lpVtbl -> get_Tabulators(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Name_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Name_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ITextStyle_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Number_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Number_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ITextStyle_put_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Step_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Step_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Align_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Align_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAlignEnum Val);


void __RPC_STUB ITextStyle_put_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_IndentedLine_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_IndentedLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_IndentedLine_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_IndentedLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_StepBeforeParagraph_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_StepBeforeParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_StepBeforeParagraph_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_StepBeforeParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_StepAfterParagraph_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_StepAfterParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_StepAfterParagraph_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_StepAfterParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_LeftEdge_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_LeftEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_LeftEdge_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_LeftEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_RightEdge_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_RightEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_RightEdge_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_RightEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Extended_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Extended_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Extended_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextStyle_put_Extended_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_LinesCount_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_LinesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_LinesCount_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ITextStyle_put_LinesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_EnableLine1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_EnableLine1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_EnableLine1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextStyle_put_EnableLine1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Height1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Height1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Height1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Height1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_WidthFactor1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_WidthFactor1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_WidthFactor1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_WidthFactor1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Step1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Step1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Step1_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Step1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_EnableLine2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_EnableLine2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_EnableLine2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextStyle_put_EnableLine2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Height2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Height2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Height2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Height2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_WidthFactor2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_WidthFactor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_WidthFactor2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_WidthFactor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Step2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Step2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Step2_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Step2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_EnableLine3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_EnableLine3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_EnableLine3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextStyle_put_EnableLine3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Height3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Height3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Height3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Height3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_WidthFactor3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_WidthFactor3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_WidthFactor3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_WidthFactor3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Step3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Step3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextStyle_put_Step3_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextStyle_put_Step3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Font_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ ITextFont __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Font_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextStyle_get_Tabulators_Proxy( 
    ITextStyle __RPC_FAR * This,
    /* [retval][out] */ ITabulators __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ITextStyle_get_Tabulators_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITextStyle_INTERFACE_DEFINED__ */


#ifndef __ITextFont_INTERFACE_DEFINED__
#define __ITextFont_INTERFACE_DEFINED__

/* interface ITextFont */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITextFont,0xA6AD008D,0x58D1,0x48b5,0xBD,0x29,0xE6,0x79,0x52,0x89,0xFE,0x4B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A6AD008D-58D1-48b5-BD29-E6795289FE4B")
    ITextFont : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FontName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FontName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WidthFactor( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WidthFactor( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Bold( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Bold( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Italic( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Italic( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Underline( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Underline( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLineStep( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextLineStep( 
            /* [defaultvalue][in] */ VARIANT_BOOL Val = FALSE) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITextFontVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITextFont __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITextFont __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITextFont __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FontName )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FontName )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WidthFactor )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WidthFactor )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            ITextFont __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Bold )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Bold )( 
            ITextFont __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Italic )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Italic )( 
            ITextFont __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Underline )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Underline )( 
            ITextFont __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextLineStep )( 
            ITextFont __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextLineStep )( 
            ITextFont __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Val);
        
        END_INTERFACE
    } ITextFontVtbl;

    interface ITextFont
    {
        CONST_VTBL struct ITextFontVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITextFont_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITextFont_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITextFont_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITextFont_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITextFont_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITextFont_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITextFont_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITextFont_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITextFont_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITextFont_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITextFont_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITextFont_get_FontName(This,pVal)	\
    (This)->lpVtbl -> get_FontName(This,pVal)

#define ITextFont_put_FontName(This,Val)	\
    (This)->lpVtbl -> put_FontName(This,Val)

#define ITextFont_get_Height(This,pVal)	\
    (This)->lpVtbl -> get_Height(This,pVal)

#define ITextFont_put_Height(This,Val)	\
    (This)->lpVtbl -> put_Height(This,Val)

#define ITextFont_get_WidthFactor(This,pVal)	\
    (This)->lpVtbl -> get_WidthFactor(This,pVal)

#define ITextFont_put_WidthFactor(This,Val)	\
    (This)->lpVtbl -> put_WidthFactor(This,Val)

#define ITextFont_get_Color(This,pVal)	\
    (This)->lpVtbl -> get_Color(This,pVal)

#define ITextFont_put_Color(This,Val)	\
    (This)->lpVtbl -> put_Color(This,Val)

#define ITextFont_get_Bold(This,pVal)	\
    (This)->lpVtbl -> get_Bold(This,pVal)

#define ITextFont_put_Bold(This,Val)	\
    (This)->lpVtbl -> put_Bold(This,Val)

#define ITextFont_get_Italic(This,pVal)	\
    (This)->lpVtbl -> get_Italic(This,pVal)

#define ITextFont_put_Italic(This,Val)	\
    (This)->lpVtbl -> put_Italic(This,Val)

#define ITextFont_get_Underline(This,pVal)	\
    (This)->lpVtbl -> get_Underline(This,pVal)

#define ITextFont_put_Underline(This,Val)	\
    (This)->lpVtbl -> put_Underline(This,Val)

#define ITextFont_get_TextLineStep(This,pVal)	\
    (This)->lpVtbl -> get_TextLineStep(This,pVal)

#define ITextFont_put_TextLineStep(This,Val)	\
    (This)->lpVtbl -> put_TextLineStep(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_FontName_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_FontName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_FontName_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ITextFont_put_FontName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_Height_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_Height_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextFont_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_WidthFactor_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_WidthFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_WidthFactor_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextFont_put_WidthFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_Color_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_Color_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ITextFont_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_Bold_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_Bold_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_Bold_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextFont_put_Bold_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_Italic_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_Italic_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_Italic_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextFont_put_Italic_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_Underline_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_Underline_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_Underline_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextFont_put_Underline_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextFont_get_TextLineStep_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB ITextFont_get_TextLineStep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextFont_put_TextLineStep_Proxy( 
    ITextFont __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Val);


void __RPC_STUB ITextFont_put_TextLineStep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITextFont_INTERFACE_DEFINED__ */


#ifndef __ITabulators_INTERFACE_DEFINED__
#define __ITabulators_INTERFACE_DEFINED__

/* interface ITabulators */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITabulators,0xBB66E097,0x95C7,0x49b1,0xB6,0xFD,0x35,0x06,0xC7,0x75,0x8D,0x09);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BB66E097-95C7-49b1-B6FD-3506C7758D09")
    ITabulators : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ITabulator __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ long Position,
            /* [retval][out] */ ITabulator __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITabulatorsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITabulators __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITabulators __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITabulators __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITabulators __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITabulators __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITabulators __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITabulators __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ITabulators __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ITabulator __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ITabulators __RPC_FAR * This,
            /* [in] */ long Position,
            /* [retval][out] */ ITabulator __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            ITabulators __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ITabulatorsVtbl;

    interface ITabulators
    {
        CONST_VTBL struct ITabulatorsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITabulators_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITabulators_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITabulators_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITabulators_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITabulators_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITabulators_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITabulators_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITabulators_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITabulators_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITabulators_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITabulators_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITabulators_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ITabulators_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ITabulators_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define ITabulators_Add(This,Position,Result)	\
    (This)->lpVtbl -> Add(This,Position,Result)

#define ITabulators_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITabulators_get_Item_Proxy( 
    ITabulators __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ITabulator __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITabulators_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITabulators_Add_Proxy( 
    ITabulators __RPC_FAR * This,
    /* [in] */ long Position,
    /* [retval][out] */ ITabulator __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITabulators_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITabulators_Clear_Proxy( 
    ITabulators __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITabulators_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITabulators_INTERFACE_DEFINED__ */


#ifndef __ITabulator_INTERFACE_DEFINED__
#define __ITabulator_INTERFACE_DEFINED__

/* interface ITabulator */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITabulator,0x2DD73B92,0xF8C8,0x49aa,0xAE,0xCD,0xB7,0x57,0x13,0x42,0x7F,0xC1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2DD73B92-F8C8-49aa-AECD-B75713427FC1")
    ITabulator : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Position( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Position( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Align( 
            /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Align( 
            /* [in] */ /* external definition not present */ ksAlignEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Filling( 
            /* [retval][out] */ /* external definition not present */ ksTabulatorFillingEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Filling( 
            /* [in] */ /* external definition not present */ ksTabulatorFillingEnum Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITabulatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITabulator __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITabulator __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITabulator __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Position )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Position )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Align )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Align )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAlignEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Filling )( 
            ITabulator __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTabulatorFillingEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Filling )( 
            ITabulator __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTabulatorFillingEnum Val);
        
        END_INTERFACE
    } ITabulatorVtbl;

    interface ITabulator
    {
        CONST_VTBL struct ITabulatorVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITabulator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITabulator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITabulator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITabulator_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITabulator_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITabulator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITabulator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITabulator_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITabulator_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITabulator_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITabulator_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITabulator_get_Position(This,pVal)	\
    (This)->lpVtbl -> get_Position(This,pVal)

#define ITabulator_put_Position(This,Val)	\
    (This)->lpVtbl -> put_Position(This,Val)

#define ITabulator_get_Align(This,pVal)	\
    (This)->lpVtbl -> get_Align(This,pVal)

#define ITabulator_put_Align(This,Val)	\
    (This)->lpVtbl -> put_Align(This,Val)

#define ITabulator_get_Filling(This,pVal)	\
    (This)->lpVtbl -> get_Filling(This,pVal)

#define ITabulator_put_Filling(This,Val)	\
    (This)->lpVtbl -> put_Filling(This,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITabulator_get_Position_Proxy( 
    ITabulator __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ITabulator_get_Position_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITabulator_put_Position_Proxy( 
    ITabulator __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ITabulator_put_Position_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITabulator_get_Align_Proxy( 
    ITabulator __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal);


void __RPC_STUB ITabulator_get_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITabulator_put_Align_Proxy( 
    ITabulator __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAlignEnum Val);


void __RPC_STUB ITabulator_put_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITabulator_get_Filling_Proxy( 
    ITabulator __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTabulatorFillingEnum __RPC_FAR *pVal);


void __RPC_STUB ITabulator_get_Filling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITabulator_put_Filling_Proxy( 
    ITabulator __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTabulatorFillingEnum Val);


void __RPC_STUB ITabulator_put_Filling_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITabulator_INTERFACE_DEFINED__ */


#ifndef __IText_INTERFACE_DEFINED__
#define __IText_INTERFACE_DEFINED__

/* interface IText */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IText,0x99B840FC,0x0150,0x4dad,0xBC,0x0E,0xAD,0x48,0x1B,0xAA,0xB8,0xC2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("99B840FC-0150-4dad-BC0E-AD481BAAB8C2")
    IText : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLines( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLine( 
            /* [in] */ long Index,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBefore( 
            /* [in] */ long Index,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Str( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Str( 
            /* [in] */ BSTR val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddTextLine( 
            /* [in] */ /* external definition not present */ ksTextLineType Type,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddTextLineBefore( 
            /* [in] */ /* external definition not present */ ksTextLineType Type,
            /* [in] */ long Index,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Replace( 
            /* [in] */ BSTR SrcText,
            /* [in] */ BSTR NewText,
            /* [defaultvalue][in] */ VARIANT_BOOL Case,
            /* [defaultvalue][in] */ VARIANT_BOOL WordOnly,
            /* [defaultvalue][in] */ VARIANT_BOOL ReplaceAll,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Assign( 
            /* [in] */ IText __RPC_FAR *Other,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IText __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IText __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IText __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IText __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IText __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IText __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IText __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IText __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextLines )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextLine )( 
            IText __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBefore )( 
            IText __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Str )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Str )( 
            IText __RPC_FAR * This,
            /* [in] */ BSTR val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddTextLine )( 
            IText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextLineType Type,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddTextLineBefore )( 
            IText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextLineType Type,
            /* [in] */ long Index,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Replace )( 
            IText __RPC_FAR * This,
            /* [in] */ BSTR SrcText,
            /* [in] */ BSTR NewText,
            /* [defaultvalue][in] */ VARIANT_BOOL Case,
            /* [defaultvalue][in] */ VARIANT_BOOL WordOnly,
            /* [defaultvalue][in] */ VARIANT_BOOL ReplaceAll,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Assign )( 
            IText __RPC_FAR * This,
            /* [in] */ IText __RPC_FAR *Other,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        END_INTERFACE
    } ITextVtbl;

    interface IText
    {
        CONST_VTBL struct ITextVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IText_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IText_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IText_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IText_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IText_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IText_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IText_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IText_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IText_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IText_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IText_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IText_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IText_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IText_get_TextLines(This,Result)	\
    (This)->lpVtbl -> get_TextLines(This,Result)

#define IText_get_Count(This,Result)	\
    (This)->lpVtbl -> get_Count(This,Result)

#define IText_get_TextLine(This,Index,Result)	\
    (This)->lpVtbl -> get_TextLine(This,Index,Result)

#define IText_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#define IText_AddBefore(This,Index,Value)	\
    (This)->lpVtbl -> AddBefore(This,Index,Value)

#define IText_get_Str(This,pVal)	\
    (This)->lpVtbl -> get_Str(This,pVal)

#define IText_put_Str(This,val)	\
    (This)->lpVtbl -> put_Str(This,val)

#define IText_Clear(This,Value)	\
    (This)->lpVtbl -> Clear(This,Value)

#define IText_AddTextLine(This,Type,FileName,Value)	\
    (This)->lpVtbl -> AddTextLine(This,Type,FileName,Value)

#define IText_AddTextLineBefore(This,Type,Index,FileName,Value)	\
    (This)->lpVtbl -> AddTextLineBefore(This,Type,Index,FileName,Value)

#define IText_Replace(This,SrcText,NewText,Case,WordOnly,ReplaceAll,Result)	\
    (This)->lpVtbl -> Replace(This,SrcText,NewText,Case,WordOnly,ReplaceAll,Result)

#define IText_Assign(This,Other,Value)	\
    (This)->lpVtbl -> Assign(This,Other,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IText_get_Style_Proxy( 
    IText __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IText_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IText_put_Style_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IText_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IText_get_TextLines_Proxy( 
    IText __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IText_get_TextLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IText_get_Count_Proxy( 
    IText __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IText_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IText_get_TextLine_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IText_get_TextLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_Add_Proxy( 
    IText __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IText_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_AddBefore_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IText_AddBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IText_get_Str_Proxy( 
    IText __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IText_get_Str_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IText_put_Str_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ BSTR val);


void __RPC_STUB IText_put_Str_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_Clear_Proxy( 
    IText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB IText_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_AddTextLine_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextLineType Type,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IText_AddTextLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_AddTextLineBefore_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextLineType Type,
    /* [in] */ long Index,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IText_AddTextLineBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_Replace_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ BSTR SrcText,
    /* [in] */ BSTR NewText,
    /* [defaultvalue][in] */ VARIANT_BOOL Case,
    /* [defaultvalue][in] */ VARIANT_BOOL WordOnly,
    /* [defaultvalue][in] */ VARIANT_BOOL ReplaceAll,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IText_Replace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IText_Assign_Proxy( 
    IText __RPC_FAR * This,
    /* [in] */ IText __RPC_FAR *Other,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB IText_Assign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IText_INTERFACE_DEFINED__ */


#ifndef __ITextLine_INTERFACE_DEFINED__
#define __ITextLine_INTERFACE_DEFINED__

/* interface ITextLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITextLine,0xAAB72FE2,0xDEA3,0x4fb6,0xB0,0xDD,0xB9,0x26,0x24,0x9E,0xF6,0x7C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AAB72FE2-DEA3-4fb6-B0DD-B926249EF67C")
    ITextLine : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextItems( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextItem( 
            /* [in] */ long Index,
            /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBefore( 
            /* [in] */ long Index,
            /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Str( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Str( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Align( 
            /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Align( 
            /* [in] */ /* external definition not present */ ksAlignEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IndentedLine( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_IndentedLine( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepBeforeParagraph( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepBeforeParagraph( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepAfterParagraph( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepAfterParagraph( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeftEdge( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeftEdge( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RightEdge( 
            /* [retval][out] */ double __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RightEdge( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tabulators( 
            /* [retval][out] */ ITabulators __RPC_FAR *__RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Level( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Level( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Numbering( 
            /* [retval][out] */ /* external definition not present */ ksTextNumberingEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Numbering( 
            /* [in] */ /* external definition not present */ ksTextNumberingEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLineType( 
            /* [retval][out] */ /* external definition not present */ ksTextLineType __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextLineData( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NewPage( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NewPage( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Assign( 
            /* [in] */ ITextLine __RPC_FAR *Other,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITextLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITextLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITextLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITextLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextItems )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextItem )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBefore )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Str )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Str )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Align )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Align )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAlignEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IndentedLine )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IndentedLine )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepBeforeParagraph )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepBeforeParagraph )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepAfterParagraph )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepAfterParagraph )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeftEdge )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeftEdge )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RightEdge )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RightEdge )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tabulators )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ ITabulators __RPC_FAR *__RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Level )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Level )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Numbering )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTextNumberingEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Numbering )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextNumberingEnum Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextLineType )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTextLineType __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextLineData )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NewPage )( 
            ITextLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NewPage )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Assign )( 
            ITextLine __RPC_FAR * This,
            /* [in] */ ITextLine __RPC_FAR *Other,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        END_INTERFACE
    } ITextLineVtbl;

    interface ITextLine
    {
        CONST_VTBL struct ITextLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITextLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITextLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITextLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITextLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITextLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITextLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITextLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITextLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITextLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITextLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITextLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITextLine_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define ITextLine_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define ITextLine_get_TextItems(This,Result)	\
    (This)->lpVtbl -> get_TextItems(This,Result)

#define ITextLine_get_Count(This,Result)	\
    (This)->lpVtbl -> get_Count(This,Result)

#define ITextLine_get_TextItem(This,Index,Result)	\
    (This)->lpVtbl -> get_TextItem(This,Index,Result)

#define ITextLine_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#define ITextLine_AddBefore(This,Index,Value)	\
    (This)->lpVtbl -> AddBefore(This,Index,Value)

#define ITextLine_get_Str(This,pVal)	\
    (This)->lpVtbl -> get_Str(This,pVal)

#define ITextLine_put_Str(This,Val)	\
    (This)->lpVtbl -> put_Str(This,Val)

#define ITextLine_Clear(This,Value)	\
    (This)->lpVtbl -> Clear(This,Value)

#define ITextLine_get_Step(This,pVal)	\
    (This)->lpVtbl -> get_Step(This,pVal)

#define ITextLine_put_Step(This,Val)	\
    (This)->lpVtbl -> put_Step(This,Val)

#define ITextLine_get_Align(This,pVal)	\
    (This)->lpVtbl -> get_Align(This,pVal)

#define ITextLine_put_Align(This,Val)	\
    (This)->lpVtbl -> put_Align(This,Val)

#define ITextLine_get_IndentedLine(This,pVal)	\
    (This)->lpVtbl -> get_IndentedLine(This,pVal)

#define ITextLine_put_IndentedLine(This,Val)	\
    (This)->lpVtbl -> put_IndentedLine(This,Val)

#define ITextLine_get_StepBeforeParagraph(This,pVal)	\
    (This)->lpVtbl -> get_StepBeforeParagraph(This,pVal)

#define ITextLine_put_StepBeforeParagraph(This,Val)	\
    (This)->lpVtbl -> put_StepBeforeParagraph(This,Val)

#define ITextLine_get_StepAfterParagraph(This,pVal)	\
    (This)->lpVtbl -> get_StepAfterParagraph(This,pVal)

#define ITextLine_put_StepAfterParagraph(This,Val)	\
    (This)->lpVtbl -> put_StepAfterParagraph(This,Val)

#define ITextLine_get_LeftEdge(This,pVal)	\
    (This)->lpVtbl -> get_LeftEdge(This,pVal)

#define ITextLine_put_LeftEdge(This,Val)	\
    (This)->lpVtbl -> put_LeftEdge(This,Val)

#define ITextLine_get_RightEdge(This,pVal)	\
    (This)->lpVtbl -> get_RightEdge(This,pVal)

#define ITextLine_put_RightEdge(This,Val)	\
    (This)->lpVtbl -> put_RightEdge(This,Val)

#define ITextLine_get_Tabulators(This,pVal)	\
    (This)->lpVtbl -> get_Tabulators(This,pVal)

#define ITextLine_get_Level(This,Result)	\
    (This)->lpVtbl -> get_Level(This,Result)

#define ITextLine_put_Level(This,Value)	\
    (This)->lpVtbl -> put_Level(This,Value)

#define ITextLine_get_Numbering(This,Result)	\
    (This)->lpVtbl -> get_Numbering(This,Result)

#define ITextLine_put_Numbering(This,Value)	\
    (This)->lpVtbl -> put_Numbering(This,Value)

#define ITextLine_Delete(This,Value)	\
    (This)->lpVtbl -> Delete(This,Value)

#define ITextLine_get_TextLineType(This,Result)	\
    (This)->lpVtbl -> get_TextLineType(This,Result)

#define ITextLine_get_TextLineData(This,Result)	\
    (This)->lpVtbl -> get_TextLineData(This,Result)

#define ITextLine_get_NewPage(This,Result)	\
    (This)->lpVtbl -> get_NewPage(This,Result)

#define ITextLine_put_NewPage(This,Value)	\
    (This)->lpVtbl -> put_NewPage(This,Value)

#define ITextLine_Assign(This,Other,Value)	\
    (This)->lpVtbl -> Assign(This,Other,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Style_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_Style_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB ITextLine_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_TextItems_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_TextItems_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Count_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_TextItem_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITextLine_get_TextItem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextLine_Add_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ITextLine_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextLine_AddBefore_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ITextItem __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ITextLine_AddBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Str_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_Str_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_Str_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ITextLine_put_Str_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextLine_Clear_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB ITextLine_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Step_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_Step_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextLine_put_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Align_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAlignEnum __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_Align_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAlignEnum Val);


void __RPC_STUB ITextLine_put_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_IndentedLine_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_IndentedLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_IndentedLine_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextLine_put_IndentedLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_StepBeforeParagraph_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_StepBeforeParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_StepBeforeParagraph_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextLine_put_StepBeforeParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_StepAfterParagraph_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_StepAfterParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_StepAfterParagraph_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextLine_put_StepAfterParagraph_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_LeftEdge_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_LeftEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_LeftEdge_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextLine_put_LeftEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_RightEdge_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_RightEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_RightEdge_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ITextLine_put_RightEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Tabulators_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ ITabulators __RPC_FAR *__RPC_FAR *pVal);


void __RPC_STUB ITextLine_get_Tabulators_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Level_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_Level_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_Level_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB ITextLine_put_Level_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_Numbering_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTextNumberingEnum __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_Numbering_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_Numbering_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextNumberingEnum Value);


void __RPC_STUB ITextLine_put_Numbering_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextLine_Delete_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB ITextLine_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_TextLineType_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTextLineType __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_TextLineType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_TextLineData_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITextLine_get_TextLineData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextLine_get_NewPage_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITextLine_get_NewPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextLine_put_NewPage_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ITextLine_put_NewPage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextLine_Assign_Proxy( 
    ITextLine __RPC_FAR * This,
    /* [in] */ ITextLine __RPC_FAR *Other,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB ITextLine_Assign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITextLine_INTERFACE_DEFINED__ */


#ifndef __ITextItem_INTERFACE_DEFINED__
#define __ITextItem_INTERFACE_DEFINED__

/* interface ITextItem */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITextItem,0x1DE74AFB,0x5026,0x4b85,0x86,0x1F,0xF0,0xCF,0xDB,0xD4,0x43,0xE6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1DE74AFB-5026-4b85-861F-F0CFDBD443E6")
    ITextItem : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemType( 
            /* [retval][out] */ /* external definition not present */ ksTextItemEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ItemType( 
            /* [in] */ /* external definition not present */ ksTextItemEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Str( 
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Str( 
            /* [in] */ BSTR Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SymbolFontName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SymbolFontName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Number( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SizeFactor( 
            /* [retval][out] */ /* external definition not present */ ksTextSizeEnum __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SizeFactor( 
            /* [in] */ /* external definition not present */ ksTextSizeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NewLine( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NewLine( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITextItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITextItem __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITextItem __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITextItem __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemType )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTextItemEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ItemType )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextItemEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Str )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Str )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SymbolFontName )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SymbolFontName )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Number )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SizeFactor )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTextSizeEnum __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SizeFactor )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextSizeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NewLine )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NewLine )( 
            ITextItem __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ITextItem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        END_INTERFACE
    } ITextItemVtbl;

    interface ITextItem
    {
        CONST_VTBL struct ITextItemVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITextItem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITextItem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITextItem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITextItem_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITextItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITextItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITextItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITextItem_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITextItem_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITextItem_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITextItem_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITextItem_get_ItemType(This,pVal)	\
    (This)->lpVtbl -> get_ItemType(This,pVal)

#define ITextItem_put_ItemType(This,Val)	\
    (This)->lpVtbl -> put_ItemType(This,Val)

#define ITextItem_get_Str(This,Result)	\
    (This)->lpVtbl -> get_Str(This,Result)

#define ITextItem_put_Str(This,Value)	\
    (This)->lpVtbl -> put_Str(This,Value)

#define ITextItem_get_SymbolFontName(This,pVal)	\
    (This)->lpVtbl -> get_SymbolFontName(This,pVal)

#define ITextItem_put_SymbolFontName(This,Val)	\
    (This)->lpVtbl -> put_SymbolFontName(This,Val)

#define ITextItem_get_Number(This,Result)	\
    (This)->lpVtbl -> get_Number(This,Result)

#define ITextItem_put_Number(This,Value)	\
    (This)->lpVtbl -> put_Number(This,Value)

#define ITextItem_get_SizeFactor(This,pVal)	\
    (This)->lpVtbl -> get_SizeFactor(This,pVal)

#define ITextItem_put_SizeFactor(This,Val)	\
    (This)->lpVtbl -> put_SizeFactor(This,Val)

#define ITextItem_get_NewLine(This,Result)	\
    (This)->lpVtbl -> get_NewLine(This,Result)

#define ITextItem_put_NewLine(This,Value)	\
    (This)->lpVtbl -> put_NewLine(This,Value)

#define ITextItem_Delete(This,Value)	\
    (This)->lpVtbl -> Delete(This,Value)

#define ITextItem_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextItem_get_ItemType_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTextItemEnum __RPC_FAR *pVal);


void __RPC_STUB ITextItem_get_ItemType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextItem_put_ItemType_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextItemEnum Val);


void __RPC_STUB ITextItem_put_ItemType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextItem_get_Str_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB ITextItem_get_Str_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextItem_put_Str_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [in] */ BSTR Value);


void __RPC_STUB ITextItem_put_Str_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextItem_get_SymbolFontName_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB ITextItem_get_SymbolFontName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextItem_put_SymbolFontName_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB ITextItem_put_SymbolFontName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextItem_get_Number_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITextItem_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextItem_put_Number_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB ITextItem_put_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextItem_get_SizeFactor_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTextSizeEnum __RPC_FAR *pVal);


void __RPC_STUB ITextItem_get_SizeFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextItem_put_SizeFactor_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextSizeEnum Val);


void __RPC_STUB ITextItem_put_SizeFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITextItem_get_NewLine_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITextItem_get_NewLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITextItem_put_NewLine_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ITextItem_put_NewLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextItem_Delete_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB ITextItem_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITextItem_Update_Proxy( 
    ITextItem __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ITextItem_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITextItem_INTERFACE_DEFINED__ */


#ifndef __IInsertionParameters_INTERFACE_DEFINED__
#define __IInsertionParameters_INTERFACE_DEFINED__

/* interface IInsertionParameters */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionParameters,0x1DB65C7E,0x535E,0x489e,0x8F,0x34,0x84,0xDF,0x7F,0xBA,0x09,0xB2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1DB65C7E-535E-489e-8F34-84DF7FBA09B2")
    IInsertionParameters : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceHeight( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceWidth( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AutoScale( 
            /* [in] */ VARIANT_BOOL ByHeight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ /* external definition not present */ ksAngleEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ /* external definition not present */ ksAngleEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionDefinition( 
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionDefinition( 
            /* [in] */ IInsertionDefinition __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImageResolution( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ImageResolution( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Palette( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionParametersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionParameters __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionParameters __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionParameters __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceHeight )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceWidth )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AutoScale )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ByHeight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAngleEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAngleEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionDefinition )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertionDefinition )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ IInsertionDefinition __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ImageResolution )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ImageResolution )( 
            IInsertionParameters __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Palette )( 
            IInsertionParameters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IInsertionParametersVtbl;

    interface IInsertionParameters
    {
        CONST_VTBL struct IInsertionParametersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionParameters_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionParameters_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionParameters_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionParameters_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionParameters_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionParameters_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionParameters_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionParameters_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertionParameters_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertionParameters_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertionParameters_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertionParameters_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IInsertionParameters_get_SourceHeight(This,PVal)	\
    (This)->lpVtbl -> get_SourceHeight(This,PVal)

#define IInsertionParameters_get_SourceWidth(This,PVal)	\
    (This)->lpVtbl -> get_SourceWidth(This,PVal)

#define IInsertionParameters_get_Height(This,PVal)	\
    (This)->lpVtbl -> get_Height(This,PVal)

#define IInsertionParameters_put_Height(This,PVal)	\
    (This)->lpVtbl -> put_Height(This,PVal)

#define IInsertionParameters_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#define IInsertionParameters_put_Width(This,PVal)	\
    (This)->lpVtbl -> put_Width(This,PVal)

#define IInsertionParameters_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IInsertionParameters_put_Scale(This,PVal)	\
    (This)->lpVtbl -> put_Scale(This,PVal)

#define IInsertionParameters_AutoScale(This,ByHeight,PVal)	\
    (This)->lpVtbl -> AutoScale(This,ByHeight,PVal)

#define IInsertionParameters_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IInsertionParameters_put_Angle(This,PVal)	\
    (This)->lpVtbl -> put_Angle(This,PVal)

#define IInsertionParameters_get_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> get_InsertionDefinition(This,PVal)

#define IInsertionParameters_put_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> put_InsertionDefinition(This,PVal)

#define IInsertionParameters_get_ImageResolution(This,PVal)	\
    (This)->lpVtbl -> get_ImageResolution(This,PVal)

#define IInsertionParameters_put_ImageResolution(This,PVal)	\
    (This)->lpVtbl -> put_ImageResolution(This,PVal)

#define IInsertionParameters_get_Palette(This,PVal)	\
    (This)->lpVtbl -> get_Palette(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_FileName_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_SourceHeight_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_SourceHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_SourceWidth_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_SourceWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_Height_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_put_Height_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IInsertionParameters_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_Width_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_put_Width_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IInsertionParameters_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_Scale_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_put_Scale_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IInsertionParameters_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_AutoScale_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ByHeight,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_AutoScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_Angle_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAngleEnum __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_put_Angle_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAngleEnum PVal);


void __RPC_STUB IInsertionParameters_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_InsertionDefinition_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_InsertionDefinition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_put_InsertionDefinition_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ IInsertionDefinition __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_put_InsertionDefinition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_ImageResolution_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_ImageResolution_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_put_ImageResolution_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IInsertionParameters_put_ImageResolution_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionParameters_get_Palette_Proxy( 
    IInsertionParameters __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IInsertionParameters_get_Palette_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionParameters_INTERFACE_DEFINED__ */


#ifndef __ITableCell_INTERFACE_DEFINED__
#define __ITableCell_INTERFACE_DEFINED__

/* interface ITableCell */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITableCell,0xCF9150BA,0x0E3A,0x46de,0x89,0x73,0x33,0x2A,0x00,0x36,0x14,0x74);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CF9150BA-0E3A-46de-8973-332A00361474")
    ITableCell : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CellID( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Row( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Column( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITableCellVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITableCell __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITableCell __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITableCell __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITableCell __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITableCell __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITableCell __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITableCell __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CellID )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Row )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Column )( 
            ITableCell __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        END_INTERFACE
    } ITableCellVtbl;

    interface ITableCell
    {
        CONST_VTBL struct ITableCellVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITableCell_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITableCell_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITableCell_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITableCell_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITableCell_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITableCell_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITableCell_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITableCell_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITableCell_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITableCell_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITableCell_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITableCell_get_Text(This,Result)	\
    (This)->lpVtbl -> get_Text(This,Result)

#define ITableCell_get_CellID(This,Result)	\
    (This)->lpVtbl -> get_CellID(This,Result)

#define ITableCell_get_Row(This,Result)	\
    (This)->lpVtbl -> get_Row(This,Result)

#define ITableCell_get_Column(This,Result)	\
    (This)->lpVtbl -> get_Column(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableCell_get_Text_Proxy( 
    ITableCell __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITableCell_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableCell_get_CellID_Proxy( 
    ITableCell __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITableCell_get_CellID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableCell_get_Row_Proxy( 
    ITableCell __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITableCell_get_Row_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableCell_get_Column_Proxy( 
    ITableCell __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ITableCell_get_Column_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITableCell_INTERFACE_DEFINED__ */


#ifndef __ITable_INTERFACE_DEFINED__
#define __ITable_INTERFACE_DEFINED__

/* interface ITable */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITable,0xD3715420,0x645E,0x435b,0xBB,0x25,0x8E,0x35,0xAC,0x57,0x07,0x18);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D3715420-645E-435b-BB25-8E35AC570718")
    ITable : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowsCount( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnsCount( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cell( 
            /* [in] */ long RowN,
            /* [in] */ long ColN,
            /* [retval][out] */ ITableCell __RPC_FAR *__RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CellById( 
            /* [in] */ long CellID,
            /* [retval][out] */ ITableCell __RPC_FAR *__RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddColumn( 
            /* [in] */ long ColN,
            /* [in] */ VARIANT_BOOL Right,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteColumn( 
            /* [in] */ long ColN,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddRow( 
            /* [in] */ long RowN,
            /* [in] */ VARIANT_BOOL Down,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVa) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteRow( 
            /* [in] */ long RowN,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Range( 
            /* [in] */ long BeginRow,
            /* [in] */ long BeginColumn,
            /* [in] */ long EndRow,
            /* [in] */ long EndColumn,
            /* [retval][out] */ ITableRange __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITable __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITable __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITable __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITable __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITable __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITable __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITable __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowsCount )( 
            ITable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnsCount )( 
            ITable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Cell )( 
            ITable __RPC_FAR * This,
            /* [in] */ long RowN,
            /* [in] */ long ColN,
            /* [retval][out] */ ITableCell __RPC_FAR *__RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CellById )( 
            ITable __RPC_FAR * This,
            /* [in] */ long CellID,
            /* [retval][out] */ ITableCell __RPC_FAR *__RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
            ITable __RPC_FAR * This,
            /* [in] */ long ColN,
            /* [in] */ VARIANT_BOOL Right,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteColumn )( 
            ITable __RPC_FAR * This,
            /* [in] */ long ColN,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRow )( 
            ITable __RPC_FAR * This,
            /* [in] */ long RowN,
            /* [in] */ VARIANT_BOOL Down,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVa);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRow )( 
            ITable __RPC_FAR * This,
            /* [in] */ long RowN,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            ITable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Range )( 
            ITable __RPC_FAR * This,
            /* [in] */ long BeginRow,
            /* [in] */ long BeginColumn,
            /* [in] */ long EndRow,
            /* [in] */ long EndColumn,
            /* [retval][out] */ ITableRange __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ITableVtbl;

    interface ITable
    {
        CONST_VTBL struct ITableVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITable_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITable_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITable_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITable_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITable_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITable_get_RowsCount(This,Val)	\
    (This)->lpVtbl -> get_RowsCount(This,Val)

#define ITable_get_ColumnsCount(This,Val)	\
    (This)->lpVtbl -> get_ColumnsCount(This,Val)

#define ITable_get_Cell(This,RowN,ColN,Val)	\
    (This)->lpVtbl -> get_Cell(This,RowN,ColN,Val)

#define ITable_get_CellById(This,CellID,Val)	\
    (This)->lpVtbl -> get_CellById(This,CellID,Val)

#define ITable_AddColumn(This,ColN,Right,PVal)	\
    (This)->lpVtbl -> AddColumn(This,ColN,Right,PVal)

#define ITable_DeleteColumn(This,ColN,PVal)	\
    (This)->lpVtbl -> DeleteColumn(This,ColN,PVal)

#define ITable_AddRow(This,RowN,Down,PVa)	\
    (This)->lpVtbl -> AddRow(This,RowN,Down,PVa)

#define ITable_DeleteRow(This,RowN,PVal)	\
    (This)->lpVtbl -> DeleteRow(This,RowN,PVal)

#define ITable_Clear(This,PVal)	\
    (This)->lpVtbl -> Clear(This,PVal)

#define ITable_get_Range(This,BeginRow,BeginColumn,EndRow,EndColumn,PVal)	\
    (This)->lpVtbl -> get_Range(This,BeginRow,BeginColumn,EndRow,EndColumn,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITable_get_RowsCount_Proxy( 
    ITable __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB ITable_get_RowsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITable_get_ColumnsCount_Proxy( 
    ITable __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB ITable_get_ColumnsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITable_get_Cell_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long RowN,
    /* [in] */ long ColN,
    /* [retval][out] */ ITableCell __RPC_FAR *__RPC_FAR *Val);


void __RPC_STUB ITable_get_Cell_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITable_get_CellById_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long CellID,
    /* [retval][out] */ ITableCell __RPC_FAR *__RPC_FAR *Val);


void __RPC_STUB ITable_get_CellById_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITable_AddColumn_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long ColN,
    /* [in] */ VARIANT_BOOL Right,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ITable_AddColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITable_DeleteColumn_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long ColN,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ITable_DeleteColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITable_AddRow_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long RowN,
    /* [in] */ VARIANT_BOOL Down,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVa);


void __RPC_STUB ITable_AddRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITable_DeleteRow_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long RowN,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ITable_DeleteRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITable_Clear_Proxy( 
    ITable __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ITable_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITable_get_Range_Proxy( 
    ITable __RPC_FAR * This,
    /* [in] */ long BeginRow,
    /* [in] */ long BeginColumn,
    /* [in] */ long EndRow,
    /* [in] */ long EndColumn,
    /* [retval][out] */ ITableRange __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ITable_get_Range_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITable_INTERFACE_DEFINED__ */


#ifndef __ITableRange_INTERFACE_DEFINED__
#define __ITableRange_INTERFACE_DEFINED__

/* interface ITableRange */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITableRange,0xD78E47DC,0x172B,0x4824,0xA5,0x19,0x9B,0xC2,0xC0,0x38,0x7B,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D78E47DC-172B-4824-A519-9BC2C0387B5C")
    ITableRange : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CombineCells( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DivideCells( 
            /* [in] */ long ColumnCount,
            /* [in] */ long RowCount,
            VARIANT_BOOL PrepareCombine,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearCells( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cells( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CellsFormat( 
            /* [retval][out] */ ICellFormat __RPC_FAR *__RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CellsBoundaries( 
            /* [retval][out] */ ICellBoundaries __RPC_FAR *__RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Texts( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Texts( 
            /* [in] */ VARIANT PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITableRangeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITableRange __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITableRange __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITableRange __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITableRange __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITableRange __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITableRange __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITableRange __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CombineCells )( 
            ITableRange __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DivideCells )( 
            ITableRange __RPC_FAR * This,
            /* [in] */ long ColumnCount,
            /* [in] */ long RowCount,
            VARIANT_BOOL PrepareCombine,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearCells )( 
            ITableRange __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Cells )( 
            ITableRange __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CellsFormat )( 
            ITableRange __RPC_FAR * This,
            /* [retval][out] */ ICellFormat __RPC_FAR *__RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CellsBoundaries )( 
            ITableRange __RPC_FAR * This,
            /* [retval][out] */ ICellBoundaries __RPC_FAR *__RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Texts )( 
            ITableRange __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Texts )( 
            ITableRange __RPC_FAR * This,
            /* [in] */ VARIANT PVal);
        
        END_INTERFACE
    } ITableRangeVtbl;

    interface ITableRange
    {
        CONST_VTBL struct ITableRangeVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITableRange_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITableRange_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITableRange_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITableRange_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITableRange_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITableRange_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITableRange_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITableRange_CombineCells(This,Val)	\
    (This)->lpVtbl -> CombineCells(This,Val)

#define ITableRange_DivideCells(This,ColumnCount,RowCount,PrepareCombine,Val)	\
    (This)->lpVtbl -> DivideCells(This,ColumnCount,RowCount,PrepareCombine,Val)

#define ITableRange_ClearCells(This,PVal)	\
    (This)->lpVtbl -> ClearCells(This,PVal)

#define ITableRange_get_Cells(This,PVal)	\
    (This)->lpVtbl -> get_Cells(This,PVal)

#define ITableRange_get_CellsFormat(This,Val)	\
    (This)->lpVtbl -> get_CellsFormat(This,Val)

#define ITableRange_get_CellsBoundaries(This,Val)	\
    (This)->lpVtbl -> get_CellsBoundaries(This,Val)

#define ITableRange_get_Texts(This,PVal)	\
    (This)->lpVtbl -> get_Texts(This,PVal)

#define ITableRange_put_Texts(This,PVal)	\
    (This)->lpVtbl -> put_Texts(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITableRange_CombineCells_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);


void __RPC_STUB ITableRange_CombineCells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITableRange_DivideCells_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [in] */ long ColumnCount,
    /* [in] */ long RowCount,
    VARIANT_BOOL PrepareCombine,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);


void __RPC_STUB ITableRange_DivideCells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITableRange_ClearCells_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ITableRange_ClearCells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableRange_get_Cells_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ITableRange_get_Cells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableRange_get_CellsFormat_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [retval][out] */ ICellFormat __RPC_FAR *__RPC_FAR *Val);


void __RPC_STUB ITableRange_get_CellsFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableRange_get_CellsBoundaries_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [retval][out] */ ICellBoundaries __RPC_FAR *__RPC_FAR *Val);


void __RPC_STUB ITableRange_get_CellsBoundaries_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITableRange_get_Texts_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ITableRange_get_Texts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITableRange_put_Texts_Proxy( 
    ITableRange __RPC_FAR * This,
    /* [in] */ VARIANT PVal);


void __RPC_STUB ITableRange_put_Texts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITableRange_INTERFACE_DEFINED__ */


#ifndef __ICellFormat_INTERFACE_DEFINED__
#define __ICellFormat_INTERFACE_DEFINED__

/* interface ICellFormat */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICellFormat,0x9F2F27E7,0x8FB2,0x4c6c,0xA5,0x4D,0x35,0xDB,0x24,0x00,0x60,0xD8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9F2F27E7-8FB2-4c6c-A54D-35DB240060D8")
    ICellFormat : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextStyle( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextStyle( 
            /* [in] */ long Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReadOnly( 
            /* [in] */ VARIANT_BOOL Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OneLine( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OneLine( 
            /* [in] */ VARIANT_BOOL Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeftEdge( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeftEdge( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RightEdge( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RightEdge( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpaceBefore( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SpaceBefore( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpaceAfter( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SpaceAfter( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HFormat( 
            /* [retval][out] */ /* external definition not present */ ksTextHorizontalFormatEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HFormat( 
            /* [in] */ /* external definition not present */ ksTextHorizontalFormatEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VFormat( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VFormat( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICellFormatVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICellFormat __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICellFormat __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICellFormat __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextStyle )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextStyle )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ long Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReadOnly )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReadOnly )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OneLine )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OneLine )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeftEdge )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeftEdge )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RightEdge )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RightEdge )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpaceBefore )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpaceBefore )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpaceAfter )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpaceAfter )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HFormat )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTextHorizontalFormatEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HFormat )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextHorizontalFormatEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VFormat )( 
            ICellFormat __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VFormat )( 
            ICellFormat __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } ICellFormatVtbl;

    interface ICellFormat
    {
        CONST_VTBL struct ICellFormatVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICellFormat_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICellFormat_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICellFormat_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICellFormat_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICellFormat_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICellFormat_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICellFormat_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICellFormat_get_TextStyle(This,Result)	\
    (This)->lpVtbl -> get_TextStyle(This,Result)

#define ICellFormat_put_TextStyle(This,Result)	\
    (This)->lpVtbl -> put_TextStyle(This,Result)

#define ICellFormat_get_ReadOnly(This,Result)	\
    (This)->lpVtbl -> get_ReadOnly(This,Result)

#define ICellFormat_put_ReadOnly(This,Result)	\
    (This)->lpVtbl -> put_ReadOnly(This,Result)

#define ICellFormat_get_OneLine(This,Result)	\
    (This)->lpVtbl -> get_OneLine(This,Result)

#define ICellFormat_put_OneLine(This,Result)	\
    (This)->lpVtbl -> put_OneLine(This,Result)

#define ICellFormat_get_LeftEdge(This,Result)	\
    (This)->lpVtbl -> get_LeftEdge(This,Result)

#define ICellFormat_put_LeftEdge(This,Result)	\
    (This)->lpVtbl -> put_LeftEdge(This,Result)

#define ICellFormat_get_RightEdge(This,Result)	\
    (This)->lpVtbl -> get_RightEdge(This,Result)

#define ICellFormat_put_RightEdge(This,Result)	\
    (This)->lpVtbl -> put_RightEdge(This,Result)

#define ICellFormat_get_SpaceBefore(This,Result)	\
    (This)->lpVtbl -> get_SpaceBefore(This,Result)

#define ICellFormat_put_SpaceBefore(This,Result)	\
    (This)->lpVtbl -> put_SpaceBefore(This,Result)

#define ICellFormat_get_SpaceAfter(This,Result)	\
    (This)->lpVtbl -> get_SpaceAfter(This,Result)

#define ICellFormat_put_SpaceAfter(This,Result)	\
    (This)->lpVtbl -> put_SpaceAfter(This,Result)

#define ICellFormat_get_Width(This,Result)	\
    (This)->lpVtbl -> get_Width(This,Result)

#define ICellFormat_put_Width(This,Result)	\
    (This)->lpVtbl -> put_Width(This,Result)

#define ICellFormat_get_Height(This,Result)	\
    (This)->lpVtbl -> get_Height(This,Result)

#define ICellFormat_put_Height(This,Result)	\
    (This)->lpVtbl -> put_Height(This,Result)

#define ICellFormat_get_HFormat(This,Result)	\
    (This)->lpVtbl -> get_HFormat(This,Result)

#define ICellFormat_put_HFormat(This,Value)	\
    (This)->lpVtbl -> put_HFormat(This,Value)

#define ICellFormat_get_VFormat(This,Result)	\
    (This)->lpVtbl -> get_VFormat(This,Result)

#define ICellFormat_put_VFormat(This,Value)	\
    (This)->lpVtbl -> put_VFormat(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_TextStyle_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_TextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_TextStyle_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ long Result);


void __RPC_STUB ICellFormat_put_TextStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_ReadOnly_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_ReadOnly_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Result);


void __RPC_STUB ICellFormat_put_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_OneLine_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_OneLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_OneLine_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Result);


void __RPC_STUB ICellFormat_put_OneLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_LeftEdge_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_LeftEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_LeftEdge_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICellFormat_put_LeftEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_RightEdge_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_RightEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_RightEdge_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICellFormat_put_RightEdge_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_SpaceBefore_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_SpaceBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_SpaceBefore_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICellFormat_put_SpaceBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_SpaceAfter_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_SpaceAfter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_SpaceAfter_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICellFormat_put_SpaceAfter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_Width_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_Width_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICellFormat_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_Height_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_Height_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICellFormat_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_HFormat_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTextHorizontalFormatEnum __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_HFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_HFormat_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextHorizontalFormatEnum Value);


void __RPC_STUB ICellFormat_put_HFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellFormat_get_VFormat_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICellFormat_get_VFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellFormat_put_VFormat_Proxy( 
    ICellFormat __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICellFormat_put_VFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICellFormat_INTERFACE_DEFINED__ */


#ifndef __ICellBoundaries_INTERFACE_DEFINED__
#define __ICellBoundaries_INTERFACE_DEFINED__

/* interface ICellBoundaries */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICellBoundaries,0x1E29E849,0x1D1E,0x4791,0xBD,0x31,0x8E,0xF0,0x0E,0xD5,0xD1,0x18);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1E29E849-1D1E-4791-BD31-8EF00ED5D118")
    ICellBoundaries : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineStyle( 
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [retval][out] */ /* external definition not present */ ksCurveStyleEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineStyle( 
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [in] */ /* external definition not present */ ksCurveStyleEnum Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineVisible( 
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineVisible( 
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [in] */ VARIANT_BOOL Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICellBoundariesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICellBoundaries __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICellBoundaries __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICellBoundaries __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineStyle )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [retval][out] */ /* external definition not present */ ksCurveStyleEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LineStyle )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [in] */ /* external definition not present */ ksCurveStyleEnum Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineVisible )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LineVisible )( 
            ICellBoundaries __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
            /* [in] */ VARIANT_BOOL Result);
        
        END_INTERFACE
    } ICellBoundariesVtbl;

    interface ICellBoundaries
    {
        CONST_VTBL struct ICellBoundariesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICellBoundaries_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICellBoundaries_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICellBoundaries_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICellBoundaries_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICellBoundaries_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICellBoundaries_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICellBoundaries_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICellBoundaries_get_LineStyle(This,Index,Result)	\
    (This)->lpVtbl -> get_LineStyle(This,Index,Result)

#define ICellBoundaries_put_LineStyle(This,Index,Result)	\
    (This)->lpVtbl -> put_LineStyle(This,Index,Result)

#define ICellBoundaries_get_LineVisible(This,Index,Result)	\
    (This)->lpVtbl -> get_LineVisible(This,Index,Result)

#define ICellBoundaries_put_LineVisible(This,Index,Result)	\
    (This)->lpVtbl -> put_LineVisible(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellBoundaries_get_LineStyle_Proxy( 
    ICellBoundaries __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
    /* [retval][out] */ /* external definition not present */ ksCurveStyleEnum __RPC_FAR *Result);


void __RPC_STUB ICellBoundaries_get_LineStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellBoundaries_put_LineStyle_Proxy( 
    ICellBoundaries __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
    /* [in] */ /* external definition not present */ ksCurveStyleEnum Result);


void __RPC_STUB ICellBoundaries_put_LineStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICellBoundaries_get_LineVisible_Proxy( 
    ICellBoundaries __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICellBoundaries_get_LineVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICellBoundaries_put_LineVisible_Proxy( 
    ICellBoundaries __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksCellBoundariesEnum Index,
    /* [in] */ VARIANT_BOOL Result);


void __RPC_STUB ICellBoundaries_put_LineVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICellBoundaries_INTERFACE_DEFINED__ */


#ifndef __IConverter_INTERFACE_DEFINED__
#define __IConverter_INTERFACE_DEFINED__

/* interface IConverter */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IConverter,0x642D03AB,0x4798,0x48a5,0xB0,0x75,0x3C,0xD9,0xAF,0xA1,0x85,0x54);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("642D03AB-4798-48a5-B075-3CD9AFA18554")
    IConverter : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ConverterParameters( 
            /* [in] */ long Command,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFilter( 
            /* [in] */ long DocType,
            /* [in] */ VARIANT_BOOL SaveAs,
            /* [out] */ long __RPC_FAR *Command,
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Convert( 
            /* [in] */ BSTR InputFile,
            /* [in] */ BSTR Outfile,
            /* [in] */ long Command,
            /* [in] */ VARIANT_BOOL ShowParam,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE VisualEditConvertParam( 
            /* [in] */ /* external definition not present */ OLE_HANDLE ParentHwnd,
            /* [in] */ long Command,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IConverterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IConverter __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IConverter __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IConverter __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IConverter __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IConverter __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IConverter __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IConverter __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IConverter __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IConverter __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IConverter __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IConverter __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ConverterParameters )( 
            IConverter __RPC_FAR * This,
            /* [in] */ long Command,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetFilter )( 
            IConverter __RPC_FAR * This,
            /* [in] */ long DocType,
            /* [in] */ VARIANT_BOOL SaveAs,
            /* [out] */ long __RPC_FAR *Command,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Convert )( 
            IConverter __RPC_FAR * This,
            /* [in] */ BSTR InputFile,
            /* [in] */ BSTR Outfile,
            /* [in] */ long Command,
            /* [in] */ VARIANT_BOOL ShowParam,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *VisualEditConvertParam )( 
            IConverter __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE ParentHwnd,
            /* [in] */ long Command,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);
        
        END_INTERFACE
    } IConverterVtbl;

    interface IConverter
    {
        CONST_VTBL struct IConverterVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IConverter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IConverter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IConverter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IConverter_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IConverter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IConverter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IConverter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IConverter_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IConverter_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IConverter_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IConverter_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IConverter_ConverterParameters(This,Command,PVal)	\
    (This)->lpVtbl -> ConverterParameters(This,Command,PVal)

#define IConverter_GetFilter(This,DocType,SaveAs,Command,Result)	\
    (This)->lpVtbl -> GetFilter(This,DocType,SaveAs,Command,Result)

#define IConverter_Convert(This,InputFile,Outfile,Command,ShowParam,Result)	\
    (This)->lpVtbl -> Convert(This,InputFile,Outfile,Command,ShowParam,Result)

#define IConverter_VisualEditConvertParam(This,ParentHwnd,Command,Val)	\
    (This)->lpVtbl -> VisualEditConvertParam(This,ParentHwnd,Command,Val)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IConverter_ConverterParameters_Proxy( 
    IConverter __RPC_FAR * This,
    /* [in] */ long Command,
    /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IConverter_ConverterParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IConverter_GetFilter_Proxy( 
    IConverter __RPC_FAR * This,
    /* [in] */ long DocType,
    /* [in] */ VARIANT_BOOL SaveAs,
    /* [out] */ long __RPC_FAR *Command,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB IConverter_GetFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IConverter_Convert_Proxy( 
    IConverter __RPC_FAR * This,
    /* [in] */ BSTR InputFile,
    /* [in] */ BSTR Outfile,
    /* [in] */ long Command,
    /* [in] */ VARIANT_BOOL ShowParam,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IConverter_Convert_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IConverter_VisualEditConvertParam_Proxy( 
    IConverter __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE ParentHwnd,
    /* [in] */ long Command,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);


void __RPC_STUB IConverter_VisualEditConvertParam_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IConverter_INTERFACE_DEFINED__ */


#ifndef __ksPropertyManagerNotify_DISPINTERFACE_DEFINED__
#define __ksPropertyManagerNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksPropertyManagerNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksPropertyManagerNotify,0x5A89C538,0xE0DD,0x4c21,0xB3,0xD1,0x3B,0xF6,0x5E,0xEB,0x8C,0x3E);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("5A89C538-E0DD-4c21-B3D1-3BF65EEB8C3E")
    ksPropertyManagerNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksPropertyManagerNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksPropertyManagerNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksPropertyManagerNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksPropertyManagerNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksPropertyManagerNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksPropertyManagerNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksPropertyManagerNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksPropertyManagerNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksPropertyManagerNotifyVtbl;

    interface ksPropertyManagerNotify
    {
        CONST_VTBL struct ksPropertyManagerNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksPropertyManagerNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksPropertyManagerNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksPropertyManagerNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksPropertyManagerNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksPropertyManagerNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksPropertyManagerNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksPropertyManagerNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksPropertyManagerNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksPropertyUserControlNotify_DISPINTERFACE_DEFINED__
#define __ksPropertyUserControlNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksPropertyUserControlNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksPropertyUserControlNotify,0x5A31BB02,0x026C,0x4419,0xA0,0xFF,0xA9,0x3C,0xF5,0x8D,0xCA,0x99);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("5A31BB02-026C-4419-A0FF-A93CF58DCA99")
    ksPropertyUserControlNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksPropertyUserControlNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksPropertyUserControlNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksPropertyUserControlNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksPropertyUserControlNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksPropertyUserControlNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksPropertyUserControlNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksPropertyUserControlNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksPropertyUserControlNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksPropertyUserControlNotifyVtbl;

    interface ksPropertyUserControlNotify
    {
        CONST_VTBL struct ksPropertyUserControlNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksPropertyUserControlNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksPropertyUserControlNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksPropertyUserControlNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksPropertyUserControlNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksPropertyUserControlNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksPropertyUserControlNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksPropertyUserControlNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksPropertyUserControlNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksDocumentFrameNotify_DISPINTERFACE_DEFINED__
#define __ksDocumentFrameNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksDocumentFrameNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksDocumentFrameNotify,0x6ECBB531,0x5609,0x4364,0xAC,0x92,0x7A,0x6A,0x21,0xD2,0x33,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("6ECBB531-5609-4364-AC92-7A6A21D23313")
    ksDocumentFrameNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksDocumentFrameNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksDocumentFrameNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksDocumentFrameNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksDocumentFrameNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksDocumentFrameNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksDocumentFrameNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksDocumentFrameNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksDocumentFrameNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksDocumentFrameNotifyVtbl;

    interface ksDocumentFrameNotify
    {
        CONST_VTBL struct ksDocumentFrameNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksDocumentFrameNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksDocumentFrameNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksDocumentFrameNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksDocumentFrameNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksDocumentFrameNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksDocumentFrameNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksDocumentFrameNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksDocumentFrameNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksDrawingObjectNotify_DISPINTERFACE_DEFINED__
#define __ksDrawingObjectNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksDrawingObjectNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksDrawingObjectNotify,0xE335A73F,0xDF27,0x4d33,0x8C,0xBD,0xE9,0x28,0xF7,0x97,0xFB,0x94);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("E335A73F-DF27-4d33-8CBD-E928F797FB94")
    ksDrawingObjectNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksDrawingObjectNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksDrawingObjectNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksDrawingObjectNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksDrawingObjectNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksDrawingObjectNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksDrawingObjectNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksDrawingObjectNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksDrawingObjectNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksDrawingObjectNotifyVtbl;

    interface ksDrawingObjectNotify
    {
        CONST_VTBL struct ksDrawingObjectNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksDrawingObjectNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksDrawingObjectNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksDrawingObjectNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksDrawingObjectNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksDrawingObjectNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksDrawingObjectNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksDrawingObjectNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksDrawingObjectNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksViewsAndLayersManagerNotify_DISPINTERFACE_DEFINED__
#define __ksViewsAndLayersManagerNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksViewsAndLayersManagerNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksViewsAndLayersManagerNotify,0xFC04C62E,0xAB0F,0x4614,0xB3,0xD9,0x0E,0xA8,0x67,0x1C,0xEB,0x08);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("FC04C62E-AB0F-4614-B3D9-0EA8671CEB08")
    ksViewsAndLayersManagerNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksViewsAndLayersManagerNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksViewsAndLayersManagerNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksViewsAndLayersManagerNotifyVtbl;

    interface ksViewsAndLayersManagerNotify
    {
        CONST_VTBL struct ksViewsAndLayersManagerNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksViewsAndLayersManagerNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksViewsAndLayersManagerNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksViewsAndLayersManagerNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksViewsAndLayersManagerNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksViewsAndLayersManagerNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksViewsAndLayersManagerNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksViewsAndLayersManagerNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksViewsAndLayersManagerNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksLibraryManagerNotify_DISPINTERFACE_DEFINED__
#define __ksLibraryManagerNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksLibraryManagerNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksLibraryManagerNotify,0x9B9CC387,0xE217,0x4eed,0xBC,0xE9,0x9E,0x1D,0x64,0x5B,0x49,0xEE);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("9B9CC387-E217-4eed-BCE9-9E1D645B49EE")
    ksLibraryManagerNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksLibraryManagerNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksLibraryManagerNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksLibraryManagerNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksLibraryManagerNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksLibraryManagerNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksLibraryManagerNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksLibraryManagerNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksLibraryManagerNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksLibraryManagerNotifyVtbl;

    interface ksLibraryManagerNotify
    {
        CONST_VTBL struct ksLibraryManagerNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksLibraryManagerNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksLibraryManagerNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksLibraryManagerNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksLibraryManagerNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksLibraryManagerNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksLibraryManagerNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksLibraryManagerNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksLibraryManagerNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksSpecificationDescriptionNotify_DISPINTERFACE_DEFINED__
#define __ksSpecificationDescriptionNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksSpecificationDescriptionNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksSpecificationDescriptionNotify,0xA0DA14E6,0x4F92,0x4d18,0x8C,0xD1,0x2B,0xBA,0xB6,0x95,0xCE,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("A0DA14E6-4F92-4d18-8CD1-2BBAB695CE13")
    ksSpecificationDescriptionNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksSpecificationDescriptionNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksSpecificationDescriptionNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksSpecificationDescriptionNotifyVtbl;

    interface ksSpecificationDescriptionNotify
    {
        CONST_VTBL struct ksSpecificationDescriptionNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksSpecificationDescriptionNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksSpecificationDescriptionNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksSpecificationDescriptionNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksSpecificationDescriptionNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksSpecificationDescriptionNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksSpecificationDescriptionNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksSpecificationDescriptionNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksSpecificationDescriptionNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksSpecificationObjectNotify_DISPINTERFACE_DEFINED__
#define __ksSpecificationObjectNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksSpecificationObjectNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksSpecificationObjectNotify,0x1C4DEC41,0xA8EA,0x40ee,0x9A,0xC8,0xF8,0x07,0x23,0x2D,0xB8,0x74);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("1C4DEC41-A8EA-40ee-9AC8-F807232DB874")
    ksSpecificationObjectNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksSpecificationObjectNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksSpecificationObjectNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksSpecificationObjectNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksSpecificationObjectNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksSpecificationObjectNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksSpecificationObjectNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksSpecificationObjectNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksSpecificationObjectNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksSpecificationObjectNotifyVtbl;

    interface ksSpecificationObjectNotify
    {
        CONST_VTBL struct ksSpecificationObjectNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksSpecificationObjectNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksSpecificationObjectNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksSpecificationObjectNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksSpecificationObjectNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksSpecificationObjectNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksSpecificationObjectNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksSpecificationObjectNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksSpecificationObjectNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksLayoutSheetsNotify_DISPINTERFACE_DEFINED__
#define __ksLayoutSheetsNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksLayoutSheetsNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksLayoutSheetsNotify,0x58E30500,0x6073,0x4337,0xBF,0xC1,0x32,0xA7,0x4E,0xA1,0x7D,0xE8);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("58E30500-6073-4337-BFC1-32A74EA17DE8")
    ksLayoutSheetsNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksLayoutSheetsNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksLayoutSheetsNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksLayoutSheetsNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksLayoutSheetsNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksLayoutSheetsNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksLayoutSheetsNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksLayoutSheetsNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksLayoutSheetsNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksLayoutSheetsNotifyVtbl;

    interface ksLayoutSheetsNotify
    {
        CONST_VTBL struct ksLayoutSheetsNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksLayoutSheetsNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksLayoutSheetsNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksLayoutSheetsNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksLayoutSheetsNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksLayoutSheetsNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksLayoutSheetsNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksLayoutSheetsNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksLayoutSheetsNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksModelObjectNotify_DISPINTERFACE_DEFINED__
#define __ksModelObjectNotify_DISPINTERFACE_DEFINED__

/* dispinterface ksModelObjectNotify */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksModelObjectNotify,0x7B8E86E1,0x4304,0x449d,0x9C,0xEC,0x1B,0x14,0xF7,0x4A,0x16,0xFB);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("7B8E86E1-4304-449d-9CEC-1B14F74A16FB")
    ksModelObjectNotify : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksModelObjectNotifyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksModelObjectNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksModelObjectNotify __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksModelObjectNotify __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksModelObjectNotify __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksModelObjectNotify __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksModelObjectNotify __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksModelObjectNotify __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksModelObjectNotifyVtbl;

    interface ksModelObjectNotify
    {
        CONST_VTBL struct ksModelObjectNotifyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksModelObjectNotify_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksModelObjectNotify_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksModelObjectNotify_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksModelObjectNotify_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksModelObjectNotify_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksModelObjectNotify_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksModelObjectNotify_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksModelObjectNotify_DISPINTERFACE_DEFINED__ */


#ifndef __ksDocument3DNotify7_DISPINTERFACE_DEFINED__
#define __ksDocument3DNotify7_DISPINTERFACE_DEFINED__

/* dispinterface ksDocument3DNotify7 */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksDocument3DNotify7,0xC784D45B,0x8C68,0x4189,0x8F,0x27,0xA3,0xB0,0xD6,0xCF,0xAE,0xB2);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("C784D45B-8C68-4189-8F27-A3B0D6CFAEB2")
    ksDocument3DNotify7 : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksDocument3DNotify7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksDocument3DNotify7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksDocument3DNotify7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksDocument3DNotify7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksDocument3DNotify7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksDocument3DNotify7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksDocument3DNotify7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksDocument3DNotify7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksDocument3DNotify7Vtbl;

    interface ksDocument3DNotify7
    {
        CONST_VTBL struct ksDocument3DNotify7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksDocument3DNotify7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksDocument3DNotify7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksDocument3DNotify7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksDocument3DNotify7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksDocument3DNotify7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksDocument3DNotify7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksDocument3DNotify7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksDocument3DNotify7_DISPINTERFACE_DEFINED__ */


#ifndef __IModelObjectNotifyResult_INTERFACE_DEFINED__
#define __IModelObjectNotifyResult_INTERFACE_DEFINED__

/* interface IModelObjectNotifyResult */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IModelObjectNotifyResult,0x73653933,0x51B5,0x49d6,0x9E,0xF2,0x66,0x67,0x63,0x92,0x83,0xCC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("73653933-51B5-49d6-9EF2-6667639283CC")
    IModelObjectNotifyResult : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NotifyType( 
            /* [retval][out] */ /* external definition not present */ ksObject3DNotifyEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NotifyObjects( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProcessType( 
            /* [retval][out] */ /* external definition not present */ ProcessTypeEnum __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IModelObjectNotifyResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IModelObjectNotifyResult __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IModelObjectNotifyResult __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NotifyType )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObject3DNotifyEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NotifyObjects )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProcessType )( 
            IModelObjectNotifyResult __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ProcessTypeEnum __RPC_FAR *PVal);
        
        END_INTERFACE
    } IModelObjectNotifyResultVtbl;

    interface IModelObjectNotifyResult
    {
        CONST_VTBL struct IModelObjectNotifyResultVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IModelObjectNotifyResult_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IModelObjectNotifyResult_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IModelObjectNotifyResult_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IModelObjectNotifyResult_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IModelObjectNotifyResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IModelObjectNotifyResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IModelObjectNotifyResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IModelObjectNotifyResult_get_NotifyType(This,PVal)	\
    (This)->lpVtbl -> get_NotifyType(This,PVal)

#define IModelObjectNotifyResult_get_NotifyObjects(This,PVal)	\
    (This)->lpVtbl -> get_NotifyObjects(This,PVal)

#define IModelObjectNotifyResult_get_ProcessType(This,PVal)	\
    (This)->lpVtbl -> get_ProcessType(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObjectNotifyResult_get_NotifyType_Proxy( 
    IModelObjectNotifyResult __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObject3DNotifyEnum __RPC_FAR *PVal);


void __RPC_STUB IModelObjectNotifyResult_get_NotifyType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObjectNotifyResult_get_NotifyObjects_Proxy( 
    IModelObjectNotifyResult __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IModelObjectNotifyResult_get_NotifyObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObjectNotifyResult_get_ProcessType_Proxy( 
    IModelObjectNotifyResult __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ProcessTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IModelObjectNotifyResult_get_ProcessType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IModelObjectNotifyResult_INTERFACE_DEFINED__ */


#ifndef __IKompasDocument3DNotifyResult_INTERFACE_DEFINED__
#define __IKompasDocument3DNotifyResult_INTERFACE_DEFINED__

/* interface IKompasDocument3DNotifyResult */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IKompasDocument3DNotifyResult,0x354EA69A,0x3191,0x4da4,0xB9,0x80,0x82,0x1B,0xE9,0xB7,0x68,0x3C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("354EA69A-3191-4da4-B980-821BE9B7683C")
    IKompasDocument3DNotifyResult : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NotifyType( 
            /* [retval][out] */ /* external definition not present */ ksDocument3DNotifyEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NotifyObjectType( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NotifyObject( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKompasDocument3DNotifyResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NotifyType )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDocument3DNotifyEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NotifyObjectType )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NotifyObject )( 
            IKompasDocument3DNotifyResult __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IKompasDocument3DNotifyResultVtbl;

    interface IKompasDocument3DNotifyResult
    {
        CONST_VTBL struct IKompasDocument3DNotifyResultVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IKompasDocument3DNotifyResult_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IKompasDocument3DNotifyResult_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IKompasDocument3DNotifyResult_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IKompasDocument3DNotifyResult_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IKompasDocument3DNotifyResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IKompasDocument3DNotifyResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IKompasDocument3DNotifyResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IKompasDocument3DNotifyResult_get_NotifyType(This,PVal)	\
    (This)->lpVtbl -> get_NotifyType(This,PVal)

#define IKompasDocument3DNotifyResult_get_NotifyObjectType(This,PVal)	\
    (This)->lpVtbl -> get_NotifyObjectType(This,PVal)

#define IKompasDocument3DNotifyResult_get_NotifyObject(This,PVal)	\
    (This)->lpVtbl -> get_NotifyObject(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3DNotifyResult_get_NotifyType_Proxy( 
    IKompasDocument3DNotifyResult __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDocument3DNotifyEnum __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3DNotifyResult_get_NotifyType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3DNotifyResult_get_NotifyObjectType_Proxy( 
    IKompasDocument3DNotifyResult __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3DNotifyResult_get_NotifyObjectType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IKompasDocument3DNotifyResult_get_NotifyObject_Proxy( 
    IKompasDocument3DNotifyResult __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IKompasDocument3DNotifyResult_get_NotifyObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKompasDocument3DNotifyResult_INTERFACE_DEFINED__ */


#ifndef __IModelObject_INTERFACE_DEFINED__
#define __IModelObject_INTERFACE_DEFINED__

/* interface IModelObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IModelObject,0xE37256D4,0x9021,0x47ac,0x8F,0xAF,0x37,0x13,0xFB,0x2A,0x50,0xC3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E37256D4-9021-47ac-8FAF-3713FB2A50C3")
    IModelObject : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Hidden( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Hidden( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Valid( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Part( 
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelObjectType( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Owner( 
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IModelObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IModelObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IModelObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IModelObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IModelObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IModelObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IModelObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IModelObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IModelObject __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IModelObject __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IModelObject __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IModelObjectVtbl;

    interface IModelObject
    {
        CONST_VTBL struct IModelObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IModelObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IModelObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IModelObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IModelObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IModelObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IModelObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IModelObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IModelObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IModelObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IModelObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IModelObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IModelObject_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IModelObject_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IModelObject_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IModelObject_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IModelObject_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IModelObject_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IModelObject_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IModelObject_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IModelObject_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObject_get_Name_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IModelObject_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IModelObject_put_Name_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IModelObject_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IModelObject_put_Hidden_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IModelObject_put_Hidden_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObject_get_Hidden_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IModelObject_get_Hidden_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IModelObject_Update_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IModelObject_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObject_get_Valid_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IModelObject_get_Valid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObject_get_Part_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IModelObject_get_Part_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObject_get_ModelObjectType_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);


void __RPC_STUB IModelObject_get_ModelObjectType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObject_get_Owner_Proxy( 
    IModelObject __RPC_FAR * This,
    /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IModelObject_get_Owner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IModelObject_INTERFACE_DEFINED__ */


#ifndef __IModelObjects_INTERFACE_DEFINED__
#define __IModelObjects_INTERFACE_DEFINED__

/* interface IModelObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IModelObjects,0x125CB096,0x639E,0x479f,0x98,0xDE,0xF2,0x7F,0xAB,0x23,0x83,0x8A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("125CB096-639E-479f-98DE-F27FAB23838A")
    IModelObjects : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IModelObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IModelObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IModelObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IModelObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IModelObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IModelObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IModelObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IModelObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IModelObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IModelObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IModelObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IModelObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IModelObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IModelObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IModelObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IModelObjectsVtbl;

    interface IModelObjects
    {
        CONST_VTBL struct IModelObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IModelObjects_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IModelObjects_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IModelObjects_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IModelObjects_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IModelObjects_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IModelObjects_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IModelObjects_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IModelObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IModelObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IModelObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IModelObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IModelObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IModelObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IModelObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelObjects_get_Item_Proxy( 
    IModelObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IModelObjects_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IModelObjects_INTERFACE_DEFINED__ */


#ifndef __IFeature7_INTERFACE_DEFINED__
#define __IFeature7_INTERFACE_DEFINED__

/* interface IFeature7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IFeature7,0xEF4343FA,0x985D,0x4fe9,0xAD,0x5F,0x43,0x9B,0xC8,0xF9,0x29,0x58);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EF4343FA-985D-4fe9-AD5F-439BC8F92958")
    IFeature7 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UpdateStamp( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OwnerFeature( 
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Valid( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Excluded( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Excluded( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelObjects( 
            /* [in] */ VARIANT ObjType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FeatureType( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubFeatures( 
            /* [in] */ /* external definition not present */ ksTreeTypeEnum TreeType,
            /* [in] */ VARIANT_BOOL Through,
            /* [in] */ VARIANT_BOOL LibObject,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResultBodies( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFeature7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IFeature7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IFeature7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IFeature7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IFeature7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IFeature7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IFeature7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IFeature7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UpdateStamp )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OwnerFeature )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Excluded )( 
            IFeature7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Excluded )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjects )( 
            IFeature7 __RPC_FAR * This,
            /* [in] */ VARIANT ObjType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FeatureType )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SubFeatures )( 
            IFeature7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTreeTypeEnum TreeType,
            /* [in] */ VARIANT_BOOL Through,
            /* [in] */ VARIANT_BOOL LibObject,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResultBodies )( 
            IFeature7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IFeature7Vtbl;

    interface IFeature7
    {
        CONST_VTBL struct IFeature7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IFeature7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IFeature7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IFeature7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IFeature7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IFeature7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IFeature7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IFeature7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IFeature7_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IFeature7_get_UpdateStamp(This,PVal)	\
    (This)->lpVtbl -> get_UpdateStamp(This,PVal)

#define IFeature7_get_OwnerFeature(This,Result)	\
    (This)->lpVtbl -> get_OwnerFeature(This,Result)

#define IFeature7_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IFeature7_put_Excluded(This,NewVal)	\
    (This)->lpVtbl -> put_Excluded(This,NewVal)

#define IFeature7_get_Excluded(This,PVal)	\
    (This)->lpVtbl -> get_Excluded(This,PVal)

#define IFeature7_get_ModelObjects(This,ObjType,Result)	\
    (This)->lpVtbl -> get_ModelObjects(This,ObjType,Result)

#define IFeature7_get_FeatureType(This,Type)	\
    (This)->lpVtbl -> get_FeatureType(This,Type)

#define IFeature7_Delete(This,PVal)	\
    (This)->lpVtbl -> Delete(This,PVal)

#define IFeature7_get_SubFeatures(This,TreeType,Through,LibObject,Result)	\
    (This)->lpVtbl -> get_SubFeatures(This,TreeType,Through,LibObject,Result)

#define IFeature7_get_ResultBodies(This,Result)	\
    (This)->lpVtbl -> get_ResultBodies(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_Name_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IFeature7_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_UpdateStamp_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IFeature7_get_UpdateStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_OwnerFeature_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IFeature7_get_OwnerFeature_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_Valid_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IFeature7_get_Valid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IFeature7_put_Excluded_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IFeature7_put_Excluded_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_Excluded_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IFeature7_get_Excluded_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_ModelObjects_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [in] */ VARIANT ObjType,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IFeature7_get_ModelObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_FeatureType_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);


void __RPC_STUB IFeature7_get_FeatureType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IFeature7_Delete_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IFeature7_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_SubFeatures_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTreeTypeEnum TreeType,
    /* [in] */ VARIANT_BOOL Through,
    /* [in] */ VARIANT_BOOL LibObject,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IFeature7_get_SubFeatures_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFeature7_get_ResultBodies_Proxy( 
    IFeature7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IFeature7_get_ResultBodies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFeature7_INTERFACE_DEFINED__ */


#ifndef __IParts7_INTERFACE_DEFINED__
#define __IParts7_INTERFACE_DEFINED__

/* interface IParts7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IParts7,0x42F8FCEF,0xE56F,0x466c,0x88,0x14,0xBE,0xBA,0xC0,0x71,0x9A,0xE6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("42F8FCEF-E56F-466c-8814-BEBAC0719AE6")
    IParts7 : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Part( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddFromFile( 
            /* [in] */ BSTR FileName,
            /* [defaultvalue][in] */ VARIANT_BOOL ExternalFile,
            /* [defaultvalue][in] */ VARIANT_BOOL Redraw,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ BSTR FileName,
            /* [in] */ IModelObject __RPC_FAR *Plane,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IParts7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IParts7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IParts7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IParts7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IParts7 __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IParts7 __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IParts7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IParts7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IParts7 __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IParts7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddFromFile )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [defaultvalue][in] */ VARIANT_BOOL ExternalFile,
            /* [defaultvalue][in] */ VARIANT_BOOL Redraw,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IParts7 __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [in] */ IModelObject __RPC_FAR *Plane,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IParts7Vtbl;

    interface IParts7
    {
        CONST_VTBL struct IParts7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IParts7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IParts7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IParts7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IParts7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IParts7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IParts7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IParts7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IParts7_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IParts7_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IParts7_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IParts7_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IParts7_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IParts7_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IParts7_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IParts7_get_Part(This,Index,Result)	\
    (This)->lpVtbl -> get_Part(This,Index,Result)

#define IParts7_AddFromFile(This,FileName,ExternalFile,Redraw,Result)	\
    (This)->lpVtbl -> AddFromFile(This,FileName,ExternalFile,Redraw,Result)

#define IParts7_Add(This,FileName,Plane,Result)	\
    (This)->lpVtbl -> Add(This,FileName,Plane,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IParts7_get_Part_Proxy( 
    IParts7 __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IParts7_get_Part_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IParts7_AddFromFile_Proxy( 
    IParts7 __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [defaultvalue][in] */ VARIANT_BOOL ExternalFile,
    /* [defaultvalue][in] */ VARIANT_BOOL Redraw,
    /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IParts7_AddFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IParts7_Add_Proxy( 
    IParts7 __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [in] */ IModelObject __RPC_FAR *Plane,
    /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IParts7_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IParts7_INTERFACE_DEFINED__ */


#ifndef __IPart7_INTERFACE_DEFINED__
#define __IPart7_INTERFACE_DEFINED__

/* interface IPart7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPart7,0xFA4A5FDE,0xA08C,0x4f5a,0x8C,0x04,0x98,0x39,0x5B,0xA4,0x43,0x07);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FA4A5FDE-A08C-4f5a-8C04-98395BA44307")
    IPart7 : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Marking( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Marking( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Standard( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Standard( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Fixed( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Fixed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Detail( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Mass( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Density( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Material( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMaterial( 
            /* [in] */ BSTR Name,
            /* [in] */ double Density,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Parts( 
            /* [retval][out] */ IParts7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VariableTable( 
            /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PartsEx( 
            /* [in] */ VARIANT PartCollectionType,
            /* [retval][out] */ VARIANT __RPC_FAR *Objects) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InstanceCount( 
            /* [in] */ IPart7 __RPC_FAR *Part,
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SelectByPoint( 
            /* [in] */ VARIANT Objects,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE TransferObjects( 
            /* [in] */ VARIANT objects,
            /* [in] */ ILocalCoordinateSystem __RPC_FAR *Lcs,
            /* [in] */ VARIANT_BOOL holdPosition,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Load( 
            /* [in] */ VARIANT_BOOL Full,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Unload( 
            /* [in] */ VARIANT_BOOL Full,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LoadState( 
            /* [retval][out] */ /* external definition not present */ ksLoadStateEnum __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultObject( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Type,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPart7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPart7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPart7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPart7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IPart7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Marking )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Marking )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Standard )( 
            IPart7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Standard )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Fixed )( 
            IPart7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Fixed )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Detail )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Mass )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Density )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Material )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMaterial )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ double Density,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parts )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ IParts7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariableTable )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PartsEx )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ VARIANT PartCollectionType,
            /* [retval][out] */ VARIANT __RPC_FAR *Objects);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InstanceCount )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ IPart7 __RPC_FAR *Part,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SelectByPoint )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *TransferObjects )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ VARIANT objects,
            /* [in] */ ILocalCoordinateSystem __RPC_FAR *Lcs,
            /* [in] */ VARIANT_BOOL holdPosition,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Load )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Full,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Unload )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Full,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LoadState )( 
            IPart7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLoadStateEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultObject )( 
            IPart7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Type,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IPart7Vtbl;

    interface IPart7
    {
        CONST_VTBL struct IPart7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPart7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPart7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPart7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPart7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPart7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPart7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPart7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPart7_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPart7_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPart7_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPart7_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPart7_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPart7_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IPart7_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IPart7_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IPart7_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IPart7_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IPart7_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IPart7_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IPart7_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IPart7_get_Marking(This,PVal)	\
    (This)->lpVtbl -> get_Marking(This,PVal)

#define IPart7_put_Marking(This,Val)	\
    (This)->lpVtbl -> put_Marking(This,Val)

#define IPart7_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IPart7_put_FileName(This,Val)	\
    (This)->lpVtbl -> put_FileName(This,Val)

#define IPart7_put_Standard(This,NewVal)	\
    (This)->lpVtbl -> put_Standard(This,NewVal)

#define IPart7_get_Standard(This,PVal)	\
    (This)->lpVtbl -> get_Standard(This,PVal)

#define IPart7_put_Fixed(This,NewVal)	\
    (This)->lpVtbl -> put_Fixed(This,NewVal)

#define IPart7_get_Fixed(This,PVal)	\
    (This)->lpVtbl -> get_Fixed(This,PVal)

#define IPart7_get_Detail(This,PVal)	\
    (This)->lpVtbl -> get_Detail(This,PVal)

#define IPart7_get_Mass(This,PVal)	\
    (This)->lpVtbl -> get_Mass(This,PVal)

#define IPart7_get_Density(This,PVal)	\
    (This)->lpVtbl -> get_Density(This,PVal)

#define IPart7_get_Material(This,pVal)	\
    (This)->lpVtbl -> get_Material(This,pVal)

#define IPart7_SetMaterial(This,Name,Density,PVal)	\
    (This)->lpVtbl -> SetMaterial(This,Name,Density,PVal)

#define IPart7_get_Parts(This,Result)	\
    (This)->lpVtbl -> get_Parts(This,Result)

#define IPart7_get_VariableTable(This,Result)	\
    (This)->lpVtbl -> get_VariableTable(This,Result)

#define IPart7_get_PartsEx(This,PartCollectionType,Objects)	\
    (This)->lpVtbl -> get_PartsEx(This,PartCollectionType,Objects)

#define IPart7_get_InstanceCount(This,Part,Count)	\
    (This)->lpVtbl -> get_InstanceCount(This,Part,Count)

#define IPart7_SelectByPoint(This,Objects,X,Y,Z,Result)	\
    (This)->lpVtbl -> SelectByPoint(This,Objects,X,Y,Z,Result)

#define IPart7_TransferObjects(This,objects,Lcs,holdPosition,Result)	\
    (This)->lpVtbl -> TransferObjects(This,objects,Lcs,holdPosition,Result)

#define IPart7_Load(This,Full,Result)	\
    (This)->lpVtbl -> Load(This,Full,Result)

#define IPart7_Unload(This,Full,Result)	\
    (This)->lpVtbl -> Unload(This,Full,Result)

#define IPart7_get_LoadState(This,Type)	\
    (This)->lpVtbl -> get_LoadState(This,Type)

#define IPart7_get_DefaultObject(This,Type,Result)	\
    (This)->lpVtbl -> get_DefaultObject(This,Type,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Marking_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_Marking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPart7_put_Marking_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IPart7_put_Marking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_FileName_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPart7_put_FileName_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IPart7_put_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPart7_put_Standard_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPart7_put_Standard_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Standard_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_Standard_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPart7_put_Fixed_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPart7_put_Fixed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Fixed_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_Fixed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Detail_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_Detail_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Mass_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_Mass_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Density_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPart7_get_Density_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Material_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IPart7_get_Material_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPart7_SetMaterial_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ double Density,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPart7_SetMaterial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_Parts_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ IParts7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPart7_get_Parts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_VariableTable_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPart7_get_VariableTable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_PartsEx_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ VARIANT PartCollectionType,
    /* [retval][out] */ VARIANT __RPC_FAR *Objects);


void __RPC_STUB IPart7_get_PartsEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_InstanceCount_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ IPart7 __RPC_FAR *Part,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB IPart7_get_InstanceCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPart7_SelectByPoint_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IPart7_SelectByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPart7_TransferObjects_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ VARIANT objects,
    /* [in] */ ILocalCoordinateSystem __RPC_FAR *Lcs,
    /* [in] */ VARIANT_BOOL holdPosition,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPart7_TransferObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPart7_Load_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Full,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPart7_Load_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPart7_Unload_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Full,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPart7_Unload_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_LoadState_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLoadStateEnum __RPC_FAR *Type);


void __RPC_STUB IPart7_get_LoadState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPart7_get_DefaultObject_Proxy( 
    IPart7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Type,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPart7_get_DefaultObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPart7_INTERFACE_DEFINED__ */


#ifndef __IModelContainer_INTERFACE_DEFINED__
#define __IModelContainer_INTERFACE_DEFINED__

/* interface IModelContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IModelContainer,0x2C6E8A0F,0xEDC8,0x413c,0x93,0x04,0x92,0x78,0x81,0x7B,0x91,0x5B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2C6E8A0F-EDC8-413c-9304-9278817B915B")
    IModelContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Objects( 
            /* [in] */ VARIANT ObjType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketchs( 
            /* [retval][out] */ ISketchs __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Extrusions( 
            /* [retval][out] */ IExtrusions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Points3D( 
            /* [retval][out] */ IPoints3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IModelContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IModelContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IModelContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IModelContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IModelContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IModelContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IModelContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IModelContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Objects )( 
            IModelContainer __RPC_FAR * This,
            /* [in] */ VARIANT ObjType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketchs )( 
            IModelContainer __RPC_FAR * This,
            /* [retval][out] */ ISketchs __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Extrusions )( 
            IModelContainer __RPC_FAR * This,
            /* [retval][out] */ IExtrusions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Points3D )( 
            IModelContainer __RPC_FAR * This,
            /* [retval][out] */ IPoints3D __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IModelContainerVtbl;

    interface IModelContainer
    {
        CONST_VTBL struct IModelContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IModelContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IModelContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IModelContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IModelContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IModelContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IModelContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IModelContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IModelContainer_get_Objects(This,ObjType,Result)	\
    (This)->lpVtbl -> get_Objects(This,ObjType,Result)

#define IModelContainer_get_Sketchs(This,PVal)	\
    (This)->lpVtbl -> get_Sketchs(This,PVal)

#define IModelContainer_get_Extrusions(This,PVal)	\
    (This)->lpVtbl -> get_Extrusions(This,PVal)

#define IModelContainer_get_Points3D(This,PVal)	\
    (This)->lpVtbl -> get_Points3D(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelContainer_get_Objects_Proxy( 
    IModelContainer __RPC_FAR * This,
    /* [in] */ VARIANT ObjType,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IModelContainer_get_Objects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelContainer_get_Sketchs_Proxy( 
    IModelContainer __RPC_FAR * This,
    /* [retval][out] */ ISketchs __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IModelContainer_get_Sketchs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelContainer_get_Extrusions_Proxy( 
    IModelContainer __RPC_FAR * This,
    /* [retval][out] */ IExtrusions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IModelContainer_get_Extrusions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelContainer_get_Points3D_Proxy( 
    IModelContainer __RPC_FAR * This,
    /* [retval][out] */ IPoints3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IModelContainer_get_Points3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IModelContainer_INTERFACE_DEFINED__ */


#ifndef __ISketchs_INTERFACE_DEFINED__
#define __ISketchs_INTERFACE_DEFINED__

/* interface ISketchs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISketchs,0xEE562963,0x395C,0x4748,0x97,0x26,0xFC,0xA9,0xC5,0x31,0xB1,0xCA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EE562963-395C-4748-9726-FCA9C531B1CA")
    ISketchs : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketch( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISketchsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISketchs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISketchs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISketchs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISketchs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISketchs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISketchs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISketchs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISketchs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            ISketchs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISketchs __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISketchsVtbl;

    interface ISketchs
    {
        CONST_VTBL struct ISketchsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISketchs_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISketchs_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISketchs_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISketchs_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISketchs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISketchs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISketchs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISketchs_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISketchs_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISketchs_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISketchs_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISketchs_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISketchs_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISketchs_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISketchs_get_Sketch(This,Index,Result)	\
    (This)->lpVtbl -> get_Sketch(This,Index,Result)

#define ISketchs_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISketchs_get_Sketch_Proxy( 
    ISketchs __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISketchs_get_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketchs_Add_Proxy( 
    ISketchs __RPC_FAR * This,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISketchs_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISketchs_INTERFACE_DEFINED__ */


#ifndef __IExtrusions_INTERFACE_DEFINED__
#define __IExtrusions_INTERFACE_DEFINED__

/* interface IExtrusions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IExtrusions,0xA160C032,0xCF96,0x4467,0xA6,0x82,0xCE,0x22,0x43,0xDF,0x76,0xBD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A160C032-CF96-4467-A682-CE2243DF76BD")
    IExtrusions : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Extrusion( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IExtrusion __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum ExtrusionType,
            /* [retval][out] */ IExtrusion __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtrusionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IExtrusions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IExtrusions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IExtrusions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IExtrusions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IExtrusions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IExtrusions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IExtrusions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IExtrusions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IExtrusions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Extrusion )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IExtrusion __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IExtrusions __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum ExtrusionType,
            /* [retval][out] */ IExtrusion __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IExtrusionsVtbl;

    interface IExtrusions
    {
        CONST_VTBL struct IExtrusionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExtrusions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExtrusions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExtrusions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExtrusions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExtrusions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExtrusions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExtrusions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExtrusions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IExtrusions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IExtrusions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IExtrusions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IExtrusions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IExtrusions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IExtrusions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IExtrusions_get_Extrusion(This,Index,Result)	\
    (This)->lpVtbl -> get_Extrusion(This,Index,Result)

#define IExtrusions_Add(This,ExtrusionType,Result)	\
    (This)->lpVtbl -> Add(This,ExtrusionType,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusions_get_Extrusion_Proxy( 
    IExtrusions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IExtrusion __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IExtrusions_get_Extrusion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExtrusions_Add_Proxy( 
    IExtrusions __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum ExtrusionType,
    /* [retval][out] */ IExtrusion __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IExtrusions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExtrusions_INTERFACE_DEFINED__ */


#ifndef __IVariableTable_INTERFACE_DEFINED__
#define __IVariableTable_INTERFACE_DEFINED__

/* interface IVariableTable */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IVariableTable,0x2B8B154E,0xED76,0x4ff0,0xB3,0xE4,0xFE,0xE6,0x91,0xD0,0x14,0xA4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2B8B154E-ED76-4ff0-B3E4-FEE691D014A4")
    IVariableTable : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RowsCount( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColumnsCount( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VarName( 
            /* [in] */ long column,
            /* [retval][out] */ BSTR __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VarName( 
            /* [in] */ long column,
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VarNames( 
            /* [retval][out] */ VARIANT __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VarNames( 
            /* [in] */ VARIANT Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [in] */ long Val,
            /* [retval][out] */ BSTR __RPC_FAR *BstrVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ long Val,
            /* [in] */ BSTR BstrVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TableRow( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TableRow( 
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cell( 
            /* [in] */ long RowIndexVal,
            /* [in] */ long ColIndex,
            /* [retval][out] */ double __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Cell( 
            /* [in] */ long RowIndexVal,
            /* [in] */ long ColIndex,
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ApplyVars( 
            /* [in] */ VARIANT index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VisualTable( 
            /* [in] */ /* external definition not present */ OLE_HANDLE WinVal,
            /* [in] */ VARIANT_BOOL Select,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddColumn( 
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *ColVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteColumn( 
            /* [in] */ VARIANT ColVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddRow( 
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *RowVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteRow( 
            /* [in] */ VARIANT RowVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE FindColumnIndex( 
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVariableTableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IVariableTable __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IVariableTable __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IVariableTable __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RowsCount )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColumnsCount )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VarName )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ long column,
            /* [retval][out] */ BSTR __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VarName )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ long column,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VarNames )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VarNames )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ long Val,
            /* [retval][out] */ BSTR __RPC_FAR *BstrVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ long Val,
            /* [in] */ BSTR BstrVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TableRow )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ VARIANT __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TableRow )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [in] */ VARIANT Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Cell )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ long RowIndexVal,
            /* [in] */ long ColIndex,
            /* [retval][out] */ double __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Cell )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ long RowIndexVal,
            /* [in] */ long ColIndex,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ApplyVars )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ VARIANT index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VisualTable )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE WinVal,
            /* [in] */ VARIANT_BOOL Select,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddColumn )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *ColVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteColumn )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ VARIANT ColVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRow )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *RowVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteRow )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ VARIANT RowVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IVariableTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindColumnIndex )( 
            IVariableTable __RPC_FAR * This,
            /* [in] */ BSTR Val,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IVariableTableVtbl;

    interface IVariableTable
    {
        CONST_VTBL struct IVariableTableVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVariableTable_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVariableTable_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVariableTable_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVariableTable_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVariableTable_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVariableTable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVariableTable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVariableTable_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IVariableTable_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IVariableTable_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IVariableTable_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IVariableTable_get_RowsCount(This,Val)	\
    (This)->lpVtbl -> get_RowsCount(This,Val)

#define IVariableTable_get_ColumnsCount(This,Val)	\
    (This)->lpVtbl -> get_ColumnsCount(This,Val)

#define IVariableTable_get_VarName(This,column,Val)	\
    (This)->lpVtbl -> get_VarName(This,column,Val)

#define IVariableTable_put_VarName(This,column,Val)	\
    (This)->lpVtbl -> put_VarName(This,column,Val)

#define IVariableTable_get_VarNames(This,Val)	\
    (This)->lpVtbl -> get_VarNames(This,Val)

#define IVariableTable_put_VarNames(This,Val)	\
    (This)->lpVtbl -> put_VarNames(This,Val)

#define IVariableTable_get_Comment(This,Val,BstrVal)	\
    (This)->lpVtbl -> get_Comment(This,Val,BstrVal)

#define IVariableTable_put_Comment(This,Val,BstrVal)	\
    (This)->lpVtbl -> put_Comment(This,Val,BstrVal)

#define IVariableTable_get_TableRow(This,Index,Val)	\
    (This)->lpVtbl -> get_TableRow(This,Index,Val)

#define IVariableTable_put_TableRow(This,Index,Val)	\
    (This)->lpVtbl -> put_TableRow(This,Index,Val)

#define IVariableTable_get_Cell(This,RowIndexVal,ColIndex,Val)	\
    (This)->lpVtbl -> get_Cell(This,RowIndexVal,ColIndex,Val)

#define IVariableTable_put_Cell(This,RowIndexVal,ColIndex,Val)	\
    (This)->lpVtbl -> put_Cell(This,RowIndexVal,ColIndex,Val)

#define IVariableTable_ApplyVars(This,index,PVal)	\
    (This)->lpVtbl -> ApplyVars(This,index,PVal)

#define IVariableTable_get_VisualTable(This,WinVal,Select,PVal)	\
    (This)->lpVtbl -> get_VisualTable(This,WinVal,Select,PVal)

#define IVariableTable_AddColumn(This,Val,ColVal)	\
    (This)->lpVtbl -> AddColumn(This,Val,ColVal)

#define IVariableTable_DeleteColumn(This,ColVal,PVal)	\
    (This)->lpVtbl -> DeleteColumn(This,ColVal,PVal)

#define IVariableTable_AddRow(This,Val,RowVal)	\
    (This)->lpVtbl -> AddRow(This,Val,RowVal)

#define IVariableTable_DeleteRow(This,RowVal,PVal)	\
    (This)->lpVtbl -> DeleteRow(This,RowVal,PVal)

#define IVariableTable_Clear(This,PVal)	\
    (This)->lpVtbl -> Clear(This,PVal)

#define IVariableTable_FindColumnIndex(This,Val,PVal)	\
    (This)->lpVtbl -> FindColumnIndex(This,Val,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_RowsCount_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB IVariableTable_get_RowsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_ColumnsCount_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB IVariableTable_get_ColumnsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_VarName_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ long column,
    /* [retval][out] */ BSTR __RPC_FAR *Val);


void __RPC_STUB IVariableTable_get_VarName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariableTable_put_VarName_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ long column,
    /* [in] */ BSTR Val);


void __RPC_STUB IVariableTable_put_VarName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_VarNames_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Val);


void __RPC_STUB IVariableTable_get_VarNames_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariableTable_put_VarNames_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB IVariableTable_put_VarNames_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_Comment_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ long Val,
    /* [retval][out] */ BSTR __RPC_FAR *BstrVal);


void __RPC_STUB IVariableTable_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariableTable_put_Comment_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ long Val,
    /* [in] */ BSTR BstrVal);


void __RPC_STUB IVariableTable_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_TableRow_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ VARIANT __RPC_FAR *Val);


void __RPC_STUB IVariableTable_get_TableRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariableTable_put_TableRow_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [in] */ VARIANT Val);


void __RPC_STUB IVariableTable_put_TableRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_Cell_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ long RowIndexVal,
    /* [in] */ long ColIndex,
    /* [retval][out] */ double __RPC_FAR *Val);


void __RPC_STUB IVariableTable_get_Cell_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IVariableTable_put_Cell_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ long RowIndexVal,
    /* [in] */ long ColIndex,
    /* [in] */ double Val);


void __RPC_STUB IVariableTable_put_Cell_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_ApplyVars_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ VARIANT index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariableTable_ApplyVars_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IVariableTable_get_VisualTable_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE WinVal,
    /* [in] */ VARIANT_BOOL Select,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IVariableTable_get_VisualTable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_AddColumn_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ BSTR Val,
    /* [retval][out] */ long __RPC_FAR *ColVal);


void __RPC_STUB IVariableTable_AddColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_DeleteColumn_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ VARIANT ColVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariableTable_DeleteColumn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_AddRow_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ BSTR Val,
    /* [retval][out] */ long __RPC_FAR *RowVal);


void __RPC_STUB IVariableTable_AddRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_DeleteRow_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ VARIANT RowVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariableTable_DeleteRow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_Clear_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IVariableTable_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IVariableTable_FindColumnIndex_Proxy( 
    IVariableTable __RPC_FAR * This,
    /* [in] */ BSTR Val,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IVariableTable_FindColumnIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVariableTable_INTERFACE_DEFINED__ */


#ifndef __ISketch_INTERFACE_DEFINED__
#define __ISketch_INTERFACE_DEFINED__

/* interface ISketch */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISketch,0xE6BBF50D,0x8401,0x4fb3,0xA6,0xB6,0x15,0x3D,0x3F,0x44,0x72,0x55);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E6BBF50D-8401-4fb3-A6B6-153D3F447255")
    ISketch : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Plane( 
            /* [in] */ IModelObject __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Plane( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLocation( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLocation( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLoftPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetLoftPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginEdit( 
            /* [retval][out] */ IFragmentDocument __RPC_FAR *__RPC_FAR *SketchDoc) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE EndEdit( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISketchVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISketch __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISketch __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISketch __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISketch __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISketch __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISketch __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISketch __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISketch __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISketch __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Plane )( 
            ISketch __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Plane )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ISketch __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLocation )( 
            ISketch __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLocation )( 
            ISketch __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLoftPoint )( 
            ISketch __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLoftPoint )( 
            ISketch __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *BeginEdit )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ IFragmentDocument __RPC_FAR *__RPC_FAR *SketchDoc);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *EndEdit )( 
            ISketch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        END_INTERFACE
    } ISketchVtbl;

    interface ISketch
    {
        CONST_VTBL struct ISketchVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISketch_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISketch_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISketch_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISketch_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISketch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISketch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISketch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISketch_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISketch_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISketch_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISketch_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISketch_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISketch_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISketch_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISketch_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISketch_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISketch_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISketch_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISketch_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISketch_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISketch_put_Plane(This,PVal)	\
    (This)->lpVtbl -> put_Plane(This,PVal)

#define ISketch_get_Plane(This,Result)	\
    (This)->lpVtbl -> get_Plane(This,Result)

#define ISketch_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define ISketch_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ISketch_GetLocation(This,X,Y,PVal)	\
    (This)->lpVtbl -> GetLocation(This,X,Y,PVal)

#define ISketch_SetLocation(This,X,Y,PVal)	\
    (This)->lpVtbl -> SetLocation(This,X,Y,PVal)

#define ISketch_GetLoftPoint(This,X,Y,PVal)	\
    (This)->lpVtbl -> GetLoftPoint(This,X,Y,PVal)

#define ISketch_SetLoftPoint(This,X,Y,PVal)	\
    (This)->lpVtbl -> SetLoftPoint(This,X,Y,PVal)

#define ISketch_BeginEdit(This,SketchDoc)	\
    (This)->lpVtbl -> BeginEdit(This,SketchDoc)

#define ISketch_EndEdit(This,Res)	\
    (This)->lpVtbl -> EndEdit(This,Res)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISketch_put_Plane_Proxy( 
    ISketch __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *PVal);


void __RPC_STUB ISketch_put_Plane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISketch_get_Plane_Proxy( 
    ISketch __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISketch_get_Plane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISketch_put_Angle_Proxy( 
    ISketch __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISketch_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISketch_get_Angle_Proxy( 
    ISketch __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISketch_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketch_GetLocation_Proxy( 
    ISketch __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISketch_GetLocation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketch_SetLocation_Proxy( 
    ISketch __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISketch_SetLocation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketch_GetLoftPoint_Proxy( 
    ISketch __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISketch_GetLoftPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketch_SetLoftPoint_Proxy( 
    ISketch __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISketch_SetLoftPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketch_BeginEdit_Proxy( 
    ISketch __RPC_FAR * This,
    /* [retval][out] */ IFragmentDocument __RPC_FAR *__RPC_FAR *SketchDoc);


void __RPC_STUB ISketch_BeginEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISketch_EndEdit_Proxy( 
    ISketch __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB ISketch_EndEdit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISketch_INTERFACE_DEFINED__ */


#ifndef __IMassInertiaParam7_INTERFACE_DEFINED__
#define __IMassInertiaParam7_INTERFACE_DEFINED__

/* interface IMassInertiaParam7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMassInertiaParam7,0x666C987F,0x2700,0x4c35,0xB8,0xCE,0xDB,0x8B,0xFB,0x5A,0xAF,0x02);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("666C987F-2700-4c35-B8CE-DB8BFB5AAF02")
    IMassInertiaParam7 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Zc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Zc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ManualMassCentre( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ManualMassCentre( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LengthUnits( 
            /* [in] */ /* external definition not present */ ksLengthUnitsEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LengthUnits( 
            /* [retval][out] */ /* external definition not present */ ksLengthUnitsEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MassUnits( 
            /* [in] */ /* external definition not present */ ksMassUnitsEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MassUnits( 
            /* [retval][out] */ /* external definition not present */ ksMassUnitsEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ManualMass( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CalculateMass( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MassSettingMode( 
            /* [in] */ /* external definition not present */ ksMassSettingModeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MassSettingMode( 
            /* [retval][out] */ /* external definition not present */ ksMassSettingModeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ManualDensity( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HandBookDensity( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DensityMode( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DensityMode( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Volume( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Area( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SourceData( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceData( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Actual( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Calculate( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lx( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Ly( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lz( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lxy( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lxz( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lyz( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jx( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jy( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jz( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jxy( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jxz( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jyz( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jx0( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jy0( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jz0( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAxisX( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAxisY( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAxisZ( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Mass( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Density( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Material( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetMaterial( 
            /* [in] */ BSTR Name,
            /* [in] */ double Density,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMassInertiaParam7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMassInertiaParam7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMassInertiaParam7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Zc )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Zc )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ManualMassCentre )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ManualMassCentre )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LengthUnits )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksLengthUnitsEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LengthUnits )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLengthUnitsEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MassUnits )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMassUnitsEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MassUnits )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksMassUnitsEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ManualMass )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CalculateMass )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MassSettingMode )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMassSettingModeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MassSettingMode )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksMassSettingModeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ManualDensity )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HandBookDensity )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DensityMode )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DensityMode )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Volume )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Area )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SourceData )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceData )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Actual )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Calculate )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Lx )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Ly )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Lz )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Lxy )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Lxz )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Lyz )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jx )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jy )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jz )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jxy )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jxz )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jyz )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jx0 )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jy0 )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jz0 )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisX )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisY )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAxisZ )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Mass )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Density )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Material )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetMaterial )( 
            IMassInertiaParam7 __RPC_FAR * This,
            /* [in] */ BSTR Name,
            /* [in] */ double Density,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IMassInertiaParam7Vtbl;

    interface IMassInertiaParam7
    {
        CONST_VTBL struct IMassInertiaParam7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMassInertiaParam7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMassInertiaParam7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMassInertiaParam7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMassInertiaParam7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMassInertiaParam7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMassInertiaParam7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMassInertiaParam7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMassInertiaParam7_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IMassInertiaParam7_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IMassInertiaParam7_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IMassInertiaParam7_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IMassInertiaParam7_put_Zc(This,NewVal)	\
    (This)->lpVtbl -> put_Zc(This,NewVal)

#define IMassInertiaParam7_get_Zc(This,PVal)	\
    (This)->lpVtbl -> get_Zc(This,PVal)

#define IMassInertiaParam7_put_ManualMassCentre(This,NewVal)	\
    (This)->lpVtbl -> put_ManualMassCentre(This,NewVal)

#define IMassInertiaParam7_get_ManualMassCentre(This,PVal)	\
    (This)->lpVtbl -> get_ManualMassCentre(This,PVal)

#define IMassInertiaParam7_put_LengthUnits(This,NewVal)	\
    (This)->lpVtbl -> put_LengthUnits(This,NewVal)

#define IMassInertiaParam7_get_LengthUnits(This,PVal)	\
    (This)->lpVtbl -> get_LengthUnits(This,PVal)

#define IMassInertiaParam7_put_MassUnits(This,NewVal)	\
    (This)->lpVtbl -> put_MassUnits(This,NewVal)

#define IMassInertiaParam7_get_MassUnits(This,PVal)	\
    (This)->lpVtbl -> get_MassUnits(This,PVal)

#define IMassInertiaParam7_put_ManualMass(This,NewVal)	\
    (This)->lpVtbl -> put_ManualMass(This,NewVal)

#define IMassInertiaParam7_get_CalculateMass(This,PVal)	\
    (This)->lpVtbl -> get_CalculateMass(This,PVal)

#define IMassInertiaParam7_put_MassSettingMode(This,NewVal)	\
    (This)->lpVtbl -> put_MassSettingMode(This,NewVal)

#define IMassInertiaParam7_get_MassSettingMode(This,PVal)	\
    (This)->lpVtbl -> get_MassSettingMode(This,PVal)

#define IMassInertiaParam7_put_ManualDensity(This,NewVal)	\
    (This)->lpVtbl -> put_ManualDensity(This,NewVal)

#define IMassInertiaParam7_get_HandBookDensity(This,PVal)	\
    (This)->lpVtbl -> get_HandBookDensity(This,PVal)

#define IMassInertiaParam7_put_DensityMode(This,NewVal)	\
    (This)->lpVtbl -> put_DensityMode(This,NewVal)

#define IMassInertiaParam7_get_DensityMode(This,PVal)	\
    (This)->lpVtbl -> get_DensityMode(This,PVal)

#define IMassInertiaParam7_get_Volume(This,PVal)	\
    (This)->lpVtbl -> get_Volume(This,PVal)

#define IMassInertiaParam7_get_Area(This,PVal)	\
    (This)->lpVtbl -> get_Area(This,PVal)

#define IMassInertiaParam7_put_SourceData(This,NewVal)	\
    (This)->lpVtbl -> put_SourceData(This,NewVal)

#define IMassInertiaParam7_get_SourceData(This,PVal)	\
    (This)->lpVtbl -> get_SourceData(This,PVal)

#define IMassInertiaParam7_get_Actual(This,PVal)	\
    (This)->lpVtbl -> get_Actual(This,PVal)

#define IMassInertiaParam7_Calculate(This,PRes)	\
    (This)->lpVtbl -> Calculate(This,PRes)

#define IMassInertiaParam7_get_Lx(This,PVal)	\
    (This)->lpVtbl -> get_Lx(This,PVal)

#define IMassInertiaParam7_get_Ly(This,PVal)	\
    (This)->lpVtbl -> get_Ly(This,PVal)

#define IMassInertiaParam7_get_Lz(This,PVal)	\
    (This)->lpVtbl -> get_Lz(This,PVal)

#define IMassInertiaParam7_get_Lxy(This,PVal)	\
    (This)->lpVtbl -> get_Lxy(This,PVal)

#define IMassInertiaParam7_get_Lxz(This,PVal)	\
    (This)->lpVtbl -> get_Lxz(This,PVal)

#define IMassInertiaParam7_get_Lyz(This,PVal)	\
    (This)->lpVtbl -> get_Lyz(This,PVal)

#define IMassInertiaParam7_get_Jx(This,PVal)	\
    (This)->lpVtbl -> get_Jx(This,PVal)

#define IMassInertiaParam7_get_Jy(This,PVal)	\
    (This)->lpVtbl -> get_Jy(This,PVal)

#define IMassInertiaParam7_get_Jz(This,PVal)	\
    (This)->lpVtbl -> get_Jz(This,PVal)

#define IMassInertiaParam7_get_Jxy(This,PVal)	\
    (This)->lpVtbl -> get_Jxy(This,PVal)

#define IMassInertiaParam7_get_Jxz(This,PVal)	\
    (This)->lpVtbl -> get_Jxz(This,PVal)

#define IMassInertiaParam7_get_Jyz(This,PVal)	\
    (This)->lpVtbl -> get_Jyz(This,PVal)

#define IMassInertiaParam7_get_Jx0(This,PVal)	\
    (This)->lpVtbl -> get_Jx0(This,PVal)

#define IMassInertiaParam7_get_Jy0(This,PVal)	\
    (This)->lpVtbl -> get_Jy0(This,PVal)

#define IMassInertiaParam7_get_Jz0(This,PVal)	\
    (This)->lpVtbl -> get_Jz0(This,PVal)

#define IMassInertiaParam7_GetAxisX(This,X,Y,Z,PRes)	\
    (This)->lpVtbl -> GetAxisX(This,X,Y,Z,PRes)

#define IMassInertiaParam7_GetAxisY(This,X,Y,Z,PRes)	\
    (This)->lpVtbl -> GetAxisY(This,X,Y,Z,PRes)

#define IMassInertiaParam7_GetAxisZ(This,X,Y,Z,PRes)	\
    (This)->lpVtbl -> GetAxisZ(This,X,Y,Z,PRes)

#define IMassInertiaParam7_get_Mass(This,PVal)	\
    (This)->lpVtbl -> get_Mass(This,PVal)

#define IMassInertiaParam7_get_Density(This,PVal)	\
    (This)->lpVtbl -> get_Density(This,PVal)

#define IMassInertiaParam7_get_Material(This,pVal)	\
    (This)->lpVtbl -> get_Material(This,pVal)

#define IMassInertiaParam7_SetMaterial(This,Name,Density,PVal)	\
    (This)->lpVtbl -> SetMaterial(This,Name,Density,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_Xc_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMassInertiaParam7_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Xc_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_Yc_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMassInertiaParam7_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Yc_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_Zc_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMassInertiaParam7_put_Zc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Zc_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Zc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_ManualMassCentre_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMassInertiaParam7_put_ManualMassCentre_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_ManualMassCentre_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_ManualMassCentre_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_LengthUnits_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksLengthUnitsEnum NewVal);


void __RPC_STUB IMassInertiaParam7_put_LengthUnits_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_LengthUnits_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLengthUnitsEnum __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_LengthUnits_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_MassUnits_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMassUnitsEnum NewVal);


void __RPC_STUB IMassInertiaParam7_put_MassUnits_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_MassUnits_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksMassUnitsEnum __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_MassUnits_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_ManualMass_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMassInertiaParam7_put_ManualMass_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_CalculateMass_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_CalculateMass_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_MassSettingMode_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMassSettingModeEnum NewVal);


void __RPC_STUB IMassInertiaParam7_put_MassSettingMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_MassSettingMode_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksMassSettingModeEnum __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_MassSettingMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_ManualDensity_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMassInertiaParam7_put_ManualDensity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_HandBookDensity_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_HandBookDensity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_DensityMode_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMassInertiaParam7_put_DensityMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_DensityMode_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_DensityMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Volume_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Volume_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Area_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Area_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_put_SourceData_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMassInertiaParam7_put_SourceData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_SourceData_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_SourceData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Actual_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Actual_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_Calculate_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IMassInertiaParam7_Calculate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Lx_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Lx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Ly_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Ly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Lz_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Lz_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Lxy_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Lxy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Lxz_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Lxz_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Lyz_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Lyz_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jx_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jy_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jz_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jz_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jxy_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jxy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jxz_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jxz_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jyz_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jyz_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jx0_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jx0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jy0_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jy0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Jz0_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Jz0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_GetAxisX_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IMassInertiaParam7_GetAxisX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_GetAxisY_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IMassInertiaParam7_GetAxisY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_GetAxisZ_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IMassInertiaParam7_GetAxisZ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Mass_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Mass_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Density_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_get_Density_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_get_Material_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMassInertiaParam7_get_Material_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMassInertiaParam7_SetMaterial_Proxy( 
    IMassInertiaParam7 __RPC_FAR * This,
    /* [in] */ BSTR Name,
    /* [in] */ double Density,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMassInertiaParam7_SetMaterial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMassInertiaParam7_INTERFACE_DEFINED__ */


#ifndef __IExtrusion_INTERFACE_DEFINED__
#define __IExtrusion_INTERFACE_DEFINED__

/* interface IExtrusion */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IExtrusion,0x0D7FFE70,0x33EB,0x442c,0xA9,0xB6,0xA2,0x05,0xEA,0x85,0xA2,0x37);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0D7FFE70-33EB-442c-A9B6-A205EA85A237")
    IExtrusion : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sketch( 
            /* [in] */ ISketch __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketch( 
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtrusionType( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtrusionType( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Depth( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Depth( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DraftValue( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DraftValue( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DraftOutward( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DraftOutward( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DepthObject( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DepthObject( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSideParameters( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
            /* [out] */ double __RPC_FAR *Depth,
            /* [out] */ double __RPC_FAR *DraftValue,
            /* [out] */ VARIANT_BOOL __RPC_FAR *DraftOutward,
            /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSideParameters( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
            /* [in] */ double Depth,
            /* [in] */ double DraftValue,
            /* [in] */ VARIANT_BOOL DraftOutward,
            /* [in] */ IModelObject __RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtrusionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IExtrusion __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IExtrusion __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IExtrusion __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IExtrusion __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sketch )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ ISketch __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IExtrusion __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ExtrusionType )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExtrusionType )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Depth )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Depth )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DraftValue )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DraftValue )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DraftOutward )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DraftOutward )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DepthObject )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DepthObject )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSideParameters )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
            /* [out] */ double __RPC_FAR *Depth,
            /* [out] */ double __RPC_FAR *DraftValue,
            /* [out] */ VARIANT_BOOL __RPC_FAR *DraftOutward,
            /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSideParameters )( 
            IExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
            /* [in] */ double Depth,
            /* [in] */ double DraftValue,
            /* [in] */ VARIANT_BOOL DraftOutward,
            /* [in] */ IModelObject __RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IExtrusionVtbl;

    interface IExtrusion
    {
        CONST_VTBL struct IExtrusionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExtrusion_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExtrusion_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExtrusion_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExtrusion_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExtrusion_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExtrusion_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExtrusion_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExtrusion_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IExtrusion_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IExtrusion_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IExtrusion_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IExtrusion_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IExtrusion_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IExtrusion_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IExtrusion_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IExtrusion_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IExtrusion_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IExtrusion_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IExtrusion_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IExtrusion_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IExtrusion_put_Sketch(This,PVal)	\
    (This)->lpVtbl -> put_Sketch(This,PVal)

#define IExtrusion_get_Sketch(This,Result)	\
    (This)->lpVtbl -> get_Sketch(This,Result)

#define IExtrusion_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IExtrusion_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IExtrusion_put_ExtrusionType(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_ExtrusionType(This,Normal,NewVal)

#define IExtrusion_get_ExtrusionType(This,Normal,PVal)	\
    (This)->lpVtbl -> get_ExtrusionType(This,Normal,PVal)

#define IExtrusion_put_Depth(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_Depth(This,Normal,NewVal)

#define IExtrusion_get_Depth(This,Normal,PVal)	\
    (This)->lpVtbl -> get_Depth(This,Normal,PVal)

#define IExtrusion_put_DraftValue(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DraftValue(This,Normal,NewVal)

#define IExtrusion_get_DraftValue(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DraftValue(This,Normal,PVal)

#define IExtrusion_put_DraftOutward(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DraftOutward(This,Normal,NewVal)

#define IExtrusion_get_DraftOutward(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DraftOutward(This,Normal,PVal)

#define IExtrusion_put_DepthObject(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DepthObject(This,Normal,NewVal)

#define IExtrusion_get_DepthObject(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DepthObject(This,Normal,PVal)

#define IExtrusion_GetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)	\
    (This)->lpVtbl -> GetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)

#define IExtrusion_SetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)	\
    (This)->lpVtbl -> SetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_Sketch_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ ISketch __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_put_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_Sketch_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IExtrusion_get_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_Direction_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);


void __RPC_STUB IExtrusion_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_Direction_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_ExtrusionType_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal);


void __RPC_STUB IExtrusion_put_ExtrusionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_ExtrusionType_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_get_ExtrusionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_Depth_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ double NewVal);


void __RPC_STUB IExtrusion_put_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_Depth_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_get_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_DraftValue_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ double NewVal);


void __RPC_STUB IExtrusion_put_DraftValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_DraftValue_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_get_DraftValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_DraftOutward_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IExtrusion_put_DraftOutward_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_DraftOutward_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_get_DraftOutward_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExtrusion_put_DepthObject_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB IExtrusion_put_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExtrusion_get_DepthObject_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IExtrusion_get_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExtrusion_GetSideParameters_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
    /* [out] */ double __RPC_FAR *Depth,
    /* [out] */ double __RPC_FAR *DraftValue,
    /* [out] */ VARIANT_BOOL __RPC_FAR *DraftOutward,
    /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_GetSideParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExtrusion_SetSideParameters_Proxy( 
    IExtrusion __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
    /* [in] */ double Depth,
    /* [in] */ double DraftValue,
    /* [in] */ VARIANT_BOOL DraftOutward,
    /* [in] */ IModelObject __RPC_FAR *DepthObject,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IExtrusion_SetSideParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExtrusion_INTERFACE_DEFINED__ */


#ifndef __IThinParameters_INTERFACE_DEFINED__
#define __IThinParameters_INTERFACE_DEFINED__

/* interface IThinParameters */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IThinParameters,0xB90D597D,0x4213,0x4a59,0x98,0xD4,0x0B,0x67,0xE7,0x19,0x55,0x1B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B90D597D-4213-4a59-98D4-0B67E719551B")
    IThinParameters : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thin( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thin( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ThinType( 
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ThinType( 
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetThinParameters( 
            /* [out] */ VARIANT_BOOL __RPC_FAR *Thin,
            /* [out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *ThinType,
            /* [out] */ double __RPC_FAR *ThicknessNormal,
            /* [out] */ double __RPC_FAR *ThicknessReverse,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetThinParameters( 
            /* [in] */ VARIANT_BOOL Thin,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum ThinType,
            /* [in] */ double ThicknessNormal,
            /* [in] */ double ThicknessReverse,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IThinParametersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IThinParameters __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IThinParameters __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IThinParameters __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Thin )( 
            IThinParameters __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Thin )( 
            IThinParameters __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ThinType )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ThinType )( 
            IThinParameters __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Thickness )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Thickness )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetThinParameters )( 
            IThinParameters __RPC_FAR * This,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Thin,
            /* [out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *ThinType,
            /* [out] */ double __RPC_FAR *ThicknessNormal,
            /* [out] */ double __RPC_FAR *ThicknessReverse,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetThinParameters )( 
            IThinParameters __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Thin,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum ThinType,
            /* [in] */ double ThicknessNormal,
            /* [in] */ double ThicknessReverse,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IThinParametersVtbl;

    interface IThinParameters
    {
        CONST_VTBL struct IThinParametersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IThinParameters_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IThinParameters_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IThinParameters_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IThinParameters_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IThinParameters_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IThinParameters_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IThinParameters_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IThinParameters_put_Thin(This,NewVal)	\
    (This)->lpVtbl -> put_Thin(This,NewVal)

#define IThinParameters_get_Thin(This,PVal)	\
    (This)->lpVtbl -> get_Thin(This,PVal)

#define IThinParameters_put_ThinType(This,NewVal)	\
    (This)->lpVtbl -> put_ThinType(This,NewVal)

#define IThinParameters_get_ThinType(This,PVal)	\
    (This)->lpVtbl -> get_ThinType(This,PVal)

#define IThinParameters_put_Thickness(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_Thickness(This,Normal,NewVal)

#define IThinParameters_get_Thickness(This,Normal,PVal)	\
    (This)->lpVtbl -> get_Thickness(This,Normal,PVal)

#define IThinParameters_GetThinParameters(This,Thin,ThinType,ThicknessNormal,ThicknessReverse,PVal)	\
    (This)->lpVtbl -> GetThinParameters(This,Thin,ThinType,ThicknessNormal,ThicknessReverse,PVal)

#define IThinParameters_SetThinParameters(This,Thin,ThinType,ThicknessNormal,ThicknessReverse,PVal)	\
    (This)->lpVtbl -> SetThinParameters(This,Thin,ThinType,ThicknessNormal,ThicknessReverse,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IThinParameters_put_Thin_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IThinParameters_put_Thin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IThinParameters_get_Thin_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IThinParameters_get_Thin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IThinParameters_put_ThinType_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);


void __RPC_STUB IThinParameters_put_ThinType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IThinParameters_get_ThinType_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IThinParameters_get_ThinType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IThinParameters_put_Thickness_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ double NewVal);


void __RPC_STUB IThinParameters_put_Thickness_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IThinParameters_get_Thickness_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IThinParameters_get_Thickness_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IThinParameters_GetThinParameters_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Thin,
    /* [out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *ThinType,
    /* [out] */ double __RPC_FAR *ThicknessNormal,
    /* [out] */ double __RPC_FAR *ThicknessReverse,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IThinParameters_GetThinParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IThinParameters_SetThinParameters_Proxy( 
    IThinParameters __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Thin,
    /* [in] */ /* external definition not present */ ksDirectionTypeEnum ThinType,
    /* [in] */ double ThicknessNormal,
    /* [in] */ double ThicknessReverse,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IThinParameters_SetThinParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IThinParameters_INTERFACE_DEFINED__ */


#ifndef __ICutExtrusion_INTERFACE_DEFINED__
#define __ICutExtrusion_INTERFACE_DEFINED__

/* interface ICutExtrusion */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICutExtrusion,0xD2A01420,0x9159,0x48c2,0x83,0x02,0xC1,0xB1,0x0A,0x13,0xD8,0xF8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D2A01420-9159-48c2-8302-C1B10A13D8F8")
    ICutExtrusion : public IExtrusion
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Cut( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cut( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICutExtrusionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICutExtrusion __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICutExtrusion __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICutExtrusion __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ICutExtrusion __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sketch )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ ISketch __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ExtrusionType )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExtrusionType )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Depth )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Depth )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DraftValue )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DraftValue )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DraftOutward )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DraftOutward )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DepthObject )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DepthObject )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSideParameters )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
            /* [out] */ double __RPC_FAR *Depth,
            /* [out] */ double __RPC_FAR *DraftValue,
            /* [out] */ VARIANT_BOOL __RPC_FAR *DraftOutward,
            /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSideParameters )( 
            ICutExtrusion __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
            /* [in] */ double Depth,
            /* [in] */ double DraftValue,
            /* [in] */ VARIANT_BOOL DraftOutward,
            /* [in] */ IModelObject __RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Cut )( 
            ICutExtrusion __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Cut )( 
            ICutExtrusion __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICutExtrusionVtbl;

    interface ICutExtrusion
    {
        CONST_VTBL struct ICutExtrusionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICutExtrusion_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICutExtrusion_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICutExtrusion_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICutExtrusion_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICutExtrusion_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICutExtrusion_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICutExtrusion_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICutExtrusion_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICutExtrusion_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICutExtrusion_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICutExtrusion_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICutExtrusion_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ICutExtrusion_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ICutExtrusion_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ICutExtrusion_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ICutExtrusion_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ICutExtrusion_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ICutExtrusion_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ICutExtrusion_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ICutExtrusion_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ICutExtrusion_put_Sketch(This,PVal)	\
    (This)->lpVtbl -> put_Sketch(This,PVal)

#define ICutExtrusion_get_Sketch(This,Result)	\
    (This)->lpVtbl -> get_Sketch(This,Result)

#define ICutExtrusion_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define ICutExtrusion_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define ICutExtrusion_put_ExtrusionType(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_ExtrusionType(This,Normal,NewVal)

#define ICutExtrusion_get_ExtrusionType(This,Normal,PVal)	\
    (This)->lpVtbl -> get_ExtrusionType(This,Normal,PVal)

#define ICutExtrusion_put_Depth(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_Depth(This,Normal,NewVal)

#define ICutExtrusion_get_Depth(This,Normal,PVal)	\
    (This)->lpVtbl -> get_Depth(This,Normal,PVal)

#define ICutExtrusion_put_DraftValue(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DraftValue(This,Normal,NewVal)

#define ICutExtrusion_get_DraftValue(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DraftValue(This,Normal,PVal)

#define ICutExtrusion_put_DraftOutward(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DraftOutward(This,Normal,NewVal)

#define ICutExtrusion_get_DraftOutward(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DraftOutward(This,Normal,PVal)

#define ICutExtrusion_put_DepthObject(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DepthObject(This,Normal,NewVal)

#define ICutExtrusion_get_DepthObject(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DepthObject(This,Normal,PVal)

#define ICutExtrusion_GetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)	\
    (This)->lpVtbl -> GetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)

#define ICutExtrusion_SetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)	\
    (This)->lpVtbl -> SetSideParameters(This,Normal,ExtrusionType,Depth,DraftValue,DraftOutward,DepthObject,PVal)


#define ICutExtrusion_put_Cut(This,NewVal)	\
    (This)->lpVtbl -> put_Cut(This,NewVal)

#define ICutExtrusion_get_Cut(This,PVal)	\
    (This)->lpVtbl -> get_Cut(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutExtrusion_put_Cut_Proxy( 
    ICutExtrusion __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ICutExtrusion_put_Cut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutExtrusion_get_Cut_Proxy( 
    ICutExtrusion __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICutExtrusion_get_Cut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICutExtrusion_INTERFACE_DEFINED__ */


#ifndef __IChooseBodies7_INTERFACE_DEFINED__
#define __IChooseBodies7_INTERFACE_DEFINED__

/* interface IChooseBodies7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IChooseBodies7,0x7BF80DAA,0x25F8,0x4aff,0xAF,0xEA,0xCA,0xD3,0x90,0xD4,0x27,0x5D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7BF80DAA-25F8-4aff-AFEA-CAD390D4275D")
    IChooseBodies7 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ChooseBodiesType( 
            /* [in] */ /* external definition not present */ ksChooseBodiesType NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ChooseBodiesType( 
            /* [retval][out] */ /* external definition not present */ ksChooseBodiesType __RPC_FAR *Type) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Bodies( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Bodies( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IChooseBodies7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IChooseBodies7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IChooseBodies7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ChooseBodiesType )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksChooseBodiesType NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ChooseBodiesType )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksChooseBodiesType __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Bodies )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Bodies )( 
            IChooseBodies7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IChooseBodies7Vtbl;

    interface IChooseBodies7
    {
        CONST_VTBL struct IChooseBodies7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IChooseBodies7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IChooseBodies7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IChooseBodies7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IChooseBodies7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IChooseBodies7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IChooseBodies7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IChooseBodies7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IChooseBodies7_put_ChooseBodiesType(This,NewVal)	\
    (This)->lpVtbl -> put_ChooseBodiesType(This,NewVal)

#define IChooseBodies7_get_ChooseBodiesType(This,Type)	\
    (This)->lpVtbl -> get_ChooseBodiesType(This,Type)

#define IChooseBodies7_put_Bodies(This,NewVal)	\
    (This)->lpVtbl -> put_Bodies(This,NewVal)

#define IChooseBodies7_get_Bodies(This,Result)	\
    (This)->lpVtbl -> get_Bodies(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IChooseBodies7_put_ChooseBodiesType_Proxy( 
    IChooseBodies7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksChooseBodiesType NewVal);


void __RPC_STUB IChooseBodies7_put_ChooseBodiesType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChooseBodies7_get_ChooseBodiesType_Proxy( 
    IChooseBodies7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksChooseBodiesType __RPC_FAR *Type);


void __RPC_STUB IChooseBodies7_get_ChooseBodiesType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IChooseBodies7_put_Bodies_Proxy( 
    IChooseBodies7 __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB IChooseBodies7_put_Bodies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChooseBodies7_get_Bodies_Proxy( 
    IChooseBodies7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IChooseBodies7_get_Bodies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IChooseBodies7_INTERFACE_DEFINED__ */


#ifndef __IBody7_INTERFACE_DEFINED__
#define __IBody7_INTERFACE_DEFINED__

/* interface IBody7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBody7,0x4F122E22,0x0AA6,0x46e1,0x84,0x1F,0xA2,0x50,0x4B,0x14,0x59,0x95);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4F122E22-0AA6-46e1-841F-A2504B145995")
    IBody7 : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGabarit( 
            /* [out] */ double __RPC_FAR *X1,
            /* [out] */ double __RPC_FAR *Y1,
            /* [out] */ double __RPC_FAR *Z1,
            /* [out] */ double __RPC_FAR *X2,
            /* [out] */ double __RPC_FAR *Y2,
            /* [out] */ double __RPC_FAR *Z2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Marking( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Marking( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Hidden( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Hidden( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBody7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBody7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBody7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBody7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBody7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBody7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBody7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBody7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGabarit )( 
            IBody7 __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X1,
            /* [out] */ double __RPC_FAR *Y1,
            /* [out] */ double __RPC_FAR *Z1,
            /* [out] */ double __RPC_FAR *X2,
            /* [out] */ double __RPC_FAR *Y2,
            /* [out] */ double __RPC_FAR *Z2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Marking )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Marking )( 
            IBody7 __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IBody7 __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IBody7 __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IBody7 __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IBody7Vtbl;

    interface IBody7
    {
        CONST_VTBL struct IBody7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBody7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBody7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBody7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBody7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBody7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBody7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBody7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBody7_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBody7_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBody7_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBody7_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBody7_GetGabarit(This,X1,Y1,Z1,X2,Y2,Z2,Result)	\
    (This)->lpVtbl -> GetGabarit(This,X1,Y1,Z1,X2,Y2,Z2,Result)

#define IBody7_get_Marking(This,PVal)	\
    (This)->lpVtbl -> get_Marking(This,PVal)

#define IBody7_put_Marking(This,Val)	\
    (This)->lpVtbl -> put_Marking(This,Val)

#define IBody7_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IBody7_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IBody7_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IBody7_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IBody7_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBody7_GetGabarit_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X1,
    /* [out] */ double __RPC_FAR *Y1,
    /* [out] */ double __RPC_FAR *Z1,
    /* [out] */ double __RPC_FAR *X2,
    /* [out] */ double __RPC_FAR *Y2,
    /* [out] */ double __RPC_FAR *Z2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBody7_GetGabarit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBody7_get_Marking_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IBody7_get_Marking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBody7_put_Marking_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IBody7_put_Marking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBody7_get_Name_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IBody7_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBody7_put_Name_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [in] */ BSTR Val);


void __RPC_STUB IBody7_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBody7_Update_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBody7_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBody7_put_Hidden_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IBody7_put_Hidden_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBody7_get_Hidden_Proxy( 
    IBody7 __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBody7_get_Hidden_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBody7_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalBodies_INTERFACE_DEFINED__
#define __ISheetMetalBodies_INTERFACE_DEFINED__

/* interface ISheetMetalBodies */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalBodies,0xF56DBE72,0x48CC,0x48ad,0x9D,0xA4,0x10,0xD9,0x72,0xC9,0x03,0xEE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F56DBE72-48CC-48ad-9DA4-10D972C903EE")
    ISheetMetalBodies : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalBody( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalBody __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISheetMetalBody __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalBodiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalBodies __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalBodies __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalBody )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalBody __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISheetMetalBodies __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalBody __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISheetMetalBodiesVtbl;

    interface ISheetMetalBodies
    {
        CONST_VTBL struct ISheetMetalBodiesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalBodies_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalBodies_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalBodies_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalBodies_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalBodies_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalBodies_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalBodies_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalBodies_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalBodies_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalBodies_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalBodies_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalBodies_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISheetMetalBodies_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISheetMetalBodies_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISheetMetalBodies_get_SheetMetalBody(This,Index,Result)	\
    (This)->lpVtbl -> get_SheetMetalBody(This,Index,Result)

#define ISheetMetalBodies_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBodies_get_SheetMetalBody_Proxy( 
    ISheetMetalBodies __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISheetMetalBody __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalBodies_get_SheetMetalBody_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalBodies_Add_Proxy( 
    ISheetMetalBodies __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalBody __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalBodies_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalBodies_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalBody_INTERFACE_DEFINED__
#define __ISheetMetalBody_INTERFACE_DEFINED__

/* interface ISheetMetalBody */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalBody,0x2DC533DC,0x829E,0x4eff,0xA9,0x05,0x54,0x1E,0x92,0x20,0xA1,0x2D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2DC533DC-829E-4eff-A905-541E9220A12D")
    ISheetMetalBody : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ThicknessDirection( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ThicknessDirection( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Thickness( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Thickness( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Straighten( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Straighten( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnfoldType( 
            /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnfoldType( 
            /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendCoefficient( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendCoefficient( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendValue( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendValue( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendReduction( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendReduction( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendTablePath( 
            /* [in] */ BSTR NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendTablePath( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sketch( 
            /* [in] */ ISketch __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketch( 
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtrusionType( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtrusionType( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Depth( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Depth( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DepthObject( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DepthObject( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSideParameters( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
            /* [out] */ double __RPC_FAR *Depth,
            /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSideParameters( 
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
            /* [in] */ double Depth,
            /* [in] */ IModelObject __RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalBodyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalBody __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalBody __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ThicknessDirection )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ThicknessDirection )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Thickness )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Thickness )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Straighten )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Straighten )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UnfoldType )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnfoldType )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendCoefficient )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendCoefficient )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendValue )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendValue )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendReduction )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendReduction )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendTablePath )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ BSTR NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendTablePath )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sketch )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ ISketch __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ExtrusionType )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExtrusionType )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Depth )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Depth )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DepthObject )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DepthObject )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSideParameters )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
            /* [out] */ double __RPC_FAR *Depth,
            /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSideParameters )( 
            ISheetMetalBody __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Normal,
            /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
            /* [in] */ double Depth,
            /* [in] */ IModelObject __RPC_FAR *DepthObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ISheetMetalBodyVtbl;

    interface ISheetMetalBody
    {
        CONST_VTBL struct ISheetMetalBodyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalBody_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalBody_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalBody_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalBody_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalBody_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalBody_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalBody_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalBody_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalBody_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalBody_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalBody_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalBody_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISheetMetalBody_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISheetMetalBody_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISheetMetalBody_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISheetMetalBody_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISheetMetalBody_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISheetMetalBody_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISheetMetalBody_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISheetMetalBody_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISheetMetalBody_put_ThicknessDirection(This,NewVal)	\
    (This)->lpVtbl -> put_ThicknessDirection(This,NewVal)

#define ISheetMetalBody_get_ThicknessDirection(This,PVal)	\
    (This)->lpVtbl -> get_ThicknessDirection(This,PVal)

#define ISheetMetalBody_put_Thickness(This,NewVal)	\
    (This)->lpVtbl -> put_Thickness(This,NewVal)

#define ISheetMetalBody_get_Thickness(This,PVal)	\
    (This)->lpVtbl -> get_Thickness(This,PVal)

#define ISheetMetalBody_put_Straighten(This,NewVal)	\
    (This)->lpVtbl -> put_Straighten(This,NewVal)

#define ISheetMetalBody_get_Straighten(This,PVal)	\
    (This)->lpVtbl -> get_Straighten(This,PVal)

#define ISheetMetalBody_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define ISheetMetalBody_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define ISheetMetalBody_put_UnfoldType(This,NewVal)	\
    (This)->lpVtbl -> put_UnfoldType(This,NewVal)

#define ISheetMetalBody_get_UnfoldType(This,PVal)	\
    (This)->lpVtbl -> get_UnfoldType(This,PVal)

#define ISheetMetalBody_put_BendCoefficient(This,NewVal)	\
    (This)->lpVtbl -> put_BendCoefficient(This,NewVal)

#define ISheetMetalBody_get_BendCoefficient(This,PVal)	\
    (This)->lpVtbl -> get_BendCoefficient(This,PVal)

#define ISheetMetalBody_put_BendValue(This,NewVal)	\
    (This)->lpVtbl -> put_BendValue(This,NewVal)

#define ISheetMetalBody_get_BendValue(This,PVal)	\
    (This)->lpVtbl -> get_BendValue(This,PVal)

#define ISheetMetalBody_put_BendReduction(This,NewVal)	\
    (This)->lpVtbl -> put_BendReduction(This,NewVal)

#define ISheetMetalBody_get_BendReduction(This,PVal)	\
    (This)->lpVtbl -> get_BendReduction(This,PVal)

#define ISheetMetalBody_put_BendTablePath(This,NewVal)	\
    (This)->lpVtbl -> put_BendTablePath(This,NewVal)

#define ISheetMetalBody_get_BendTablePath(This,PVal)	\
    (This)->lpVtbl -> get_BendTablePath(This,PVal)

#define ISheetMetalBody_put_Sketch(This,PVal)	\
    (This)->lpVtbl -> put_Sketch(This,PVal)

#define ISheetMetalBody_get_Sketch(This,Result)	\
    (This)->lpVtbl -> get_Sketch(This,Result)

#define ISheetMetalBody_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define ISheetMetalBody_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define ISheetMetalBody_put_ExtrusionType(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_ExtrusionType(This,Normal,NewVal)

#define ISheetMetalBody_get_ExtrusionType(This,Normal,PVal)	\
    (This)->lpVtbl -> get_ExtrusionType(This,Normal,PVal)

#define ISheetMetalBody_put_Depth(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_Depth(This,Normal,NewVal)

#define ISheetMetalBody_get_Depth(This,Normal,PVal)	\
    (This)->lpVtbl -> get_Depth(This,Normal,PVal)

#define ISheetMetalBody_put_DepthObject(This,Normal,NewVal)	\
    (This)->lpVtbl -> put_DepthObject(This,Normal,NewVal)

#define ISheetMetalBody_get_DepthObject(This,Normal,PVal)	\
    (This)->lpVtbl -> get_DepthObject(This,Normal,PVal)

#define ISheetMetalBody_GetSideParameters(This,Normal,ExtrusionType,Depth,DepthObject,PVal)	\
    (This)->lpVtbl -> GetSideParameters(This,Normal,ExtrusionType,Depth,DepthObject,PVal)

#define ISheetMetalBody_SetSideParameters(This,Normal,ExtrusionType,Depth,DepthObject,PVal)	\
    (This)->lpVtbl -> SetSideParameters(This,Normal,ExtrusionType,Depth,DepthObject,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_ThicknessDirection_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBody_put_ThicknessDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_ThicknessDirection_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_ThicknessDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_Thickness_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBody_put_Thickness_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_Thickness_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_Thickness_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_Straighten_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBody_put_Straighten_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_Straighten_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_Straighten_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_Radius_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBody_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_Radius_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_UnfoldType_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal);


void __RPC_STUB ISheetMetalBody_put_UnfoldType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_UnfoldType_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_UnfoldType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_BendCoefficient_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBody_put_BendCoefficient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_BendCoefficient_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_BendCoefficient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_BendValue_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBody_put_BendValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_BendValue_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_BendValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_BendReduction_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBody_put_BendReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_BendReduction_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_BendReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_BendTablePath_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ BSTR NewVal);


void __RPC_STUB ISheetMetalBody_put_BendTablePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_BendTablePath_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_BendTablePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_Sketch_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ ISketch __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_put_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_Sketch_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalBody_get_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_Direction_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);


void __RPC_STUB ISheetMetalBody_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_Direction_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_ExtrusionType_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ /* external definition not present */ ksEndTypeEnum NewVal);


void __RPC_STUB ISheetMetalBody_put_ExtrusionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_ExtrusionType_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_ExtrusionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_Depth_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBody_put_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_Depth_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_put_DepthObject_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB ISheetMetalBody_put_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_get_DepthObject_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_get_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_GetSideParameters_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [out] */ /* external definition not present */ ksEndTypeEnum __RPC_FAR *ExtrusionType,
    /* [out] */ double __RPC_FAR *Depth,
    /* [out] */ IModelObject __RPC_FAR *__RPC_FAR *DepthObject,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_GetSideParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalBody_SetSideParameters_Proxy( 
    ISheetMetalBody __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Normal,
    /* [in] */ /* external definition not present */ ksEndTypeEnum ExtrusionType,
    /* [in] */ double Depth,
    /* [in] */ IModelObject __RPC_FAR *DepthObject,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBody_SetSideParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalBody_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalContainer_INTERFACE_DEFINED__
#define __ISheetMetalContainer_INTERFACE_DEFINED__

/* interface ISheetMetalContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalContainer,0x77A4895D,0x9B09,0x4c63,0xA3,0xFF,0x68,0x57,0xF4,0x34,0x08,0x40);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("77A4895D-9B09-4c63-A3FF-6857F4340840")
    ISheetMetalContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalBodies( 
            /* [retval][out] */ ISheetMetalBodies __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalBends( 
            /* [retval][out] */ ISheetMetalBends __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalLineBends( 
            /* [retval][out] */ ISheetMetalLineBends __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalHoles( 
            /* [retval][out] */ ISheetMetalHoles __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalCuts( 
            /* [retval][out] */ ISheetMetalCuts __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalBodies )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalBodies __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalBends )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalBends __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalLineBends )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalLineBends __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalHoles )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalHoles __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalCuts )( 
            ISheetMetalContainer __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalCuts __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISheetMetalContainerVtbl;

    interface ISheetMetalContainer
    {
        CONST_VTBL struct ISheetMetalContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalContainer_get_SheetMetalBodies(This,PVal)	\
    (This)->lpVtbl -> get_SheetMetalBodies(This,PVal)

#define ISheetMetalContainer_get_SheetMetalBends(This,PVal)	\
    (This)->lpVtbl -> get_SheetMetalBends(This,PVal)

#define ISheetMetalContainer_get_SheetMetalLineBends(This,PVal)	\
    (This)->lpVtbl -> get_SheetMetalLineBends(This,PVal)

#define ISheetMetalContainer_get_SheetMetalHoles(This,PVal)	\
    (This)->lpVtbl -> get_SheetMetalHoles(This,PVal)

#define ISheetMetalContainer_get_SheetMetalCuts(This,PVal)	\
    (This)->lpVtbl -> get_SheetMetalCuts(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalContainer_get_SheetMetalBodies_Proxy( 
    ISheetMetalContainer __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalBodies __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalContainer_get_SheetMetalBodies_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalContainer_get_SheetMetalBends_Proxy( 
    ISheetMetalContainer __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalBends __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalContainer_get_SheetMetalBends_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalContainer_get_SheetMetalLineBends_Proxy( 
    ISheetMetalContainer __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalLineBends __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalContainer_get_SheetMetalLineBends_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalContainer_get_SheetMetalHoles_Proxy( 
    ISheetMetalContainer __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalHoles __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalContainer_get_SheetMetalHoles_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalContainer_get_SheetMetalCuts_Proxy( 
    ISheetMetalContainer __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalCuts __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalContainer_get_SheetMetalCuts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalContainer_INTERFACE_DEFINED__ */


#ifndef __IPoints3D_INTERFACE_DEFINED__
#define __IPoints3D_INTERFACE_DEFINED__

/* interface IPoints3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoints3D,0x81EBB128,0x3963,0x4759,0x9D,0x4E,0x28,0x29,0xC3,0x07,0x8B,0x0F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("81EBB128-3963-4759-9D4E-2829C3078B0F")
    IPoints3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Point3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPoint3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IPoint3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoints3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoints3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoints3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoints3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoints3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoints3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoints3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoints3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IPoints3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Point3D )( 
            IPoints3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPoint3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPoints3D __RPC_FAR * This,
            /* [retval][out] */ IPoint3D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IPoints3DVtbl;

    interface IPoints3D
    {
        CONST_VTBL struct IPoints3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoints3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoints3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoints3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoints3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoints3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoints3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoints3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoints3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoints3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoints3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoints3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoints3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IPoints3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IPoints3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IPoints3D_get_Point3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Point3D(This,Index,Result)

#define IPoints3D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoints3D_get_Point3D_Proxy( 
    IPoints3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPoint3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPoints3D_get_Point3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoints3D_Add_Proxy( 
    IPoints3D __RPC_FAR * This,
    /* [retval][out] */ IPoint3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPoints3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoints3D_INTERFACE_DEFINED__ */


#ifndef __IPoint3D_INTERFACE_DEFINED__
#define __IPoint3D_INTERFACE_DEFINED__

/* interface IPoint3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3D,0xD71AEDBE,0x01D4,0x4c7d,0x96,0xDC,0x94,0x98,0x1F,0x2A,0x1C,0x37);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D71AEDBE-01D4-4c7d-96DC-94981F2A1C37")
    IPoint3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Z( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Z( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAssociationObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AssociationObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Symbol( 
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Symbol( 
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ParameterType( 
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParameterType( 
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Parameters( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IPoint3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Z )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Z )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAssociationObject )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationObject )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Symbol )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Symbol )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParameterType )( 
            IPoint3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParameterType )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parameters )( 
            IPoint3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IPoint3DVtbl;

    interface IPoint3D
    {
        CONST_VTBL struct IPoint3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPoint3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IPoint3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IPoint3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IPoint3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IPoint3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IPoint3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IPoint3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IPoint3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IPoint3D_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IPoint3D_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IPoint3D_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IPoint3D_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IPoint3D_put_Z(This,NewVal)	\
    (This)->lpVtbl -> put_Z(This,NewVal)

#define IPoint3D_get_Z(This,PVal)	\
    (This)->lpVtbl -> get_Z(This,PVal)

#define IPoint3D_SetAssociationObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetAssociationObject(This,NewVal,Result)

#define IPoint3D_get_AssociationObject(This,PVal)	\
    (This)->lpVtbl -> get_AssociationObject(This,PVal)

#define IPoint3D_put_Symbol(This,NewVal)	\
    (This)->lpVtbl -> put_Symbol(This,NewVal)

#define IPoint3D_get_Symbol(This,PVal)	\
    (This)->lpVtbl -> get_Symbol(This,PVal)

#define IPoint3D_put_ParameterType(This,NewVal)	\
    (This)->lpVtbl -> put_ParameterType(This,NewVal)

#define IPoint3D_get_ParameterType(This,PVal)	\
    (This)->lpVtbl -> get_ParameterType(This,PVal)

#define IPoint3D_get_Parameters(This,Result)	\
    (This)->lpVtbl -> get_Parameters(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3D_put_X_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3D_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_X_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3D_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3D_put_Y_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3D_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_Y_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3D_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3D_put_Z_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3D_put_Z_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_Z_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3D_get_Z_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3D_SetAssociationObject_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3D_SetAssociationObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_AssociationObject_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3D_get_AssociationObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3D_put_Symbol_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum NewVal);


void __RPC_STUB IPoint3D_put_Symbol_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_Symbol_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *PVal);


void __RPC_STUB IPoint3D_get_Symbol_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3D_put_ParameterType_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);


void __RPC_STUB IPoint3D_put_ParameterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_ParameterType_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPoint3D_get_ParameterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3D_get_Parameters_Proxy( 
    IPoint3D __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPoint3D_get_Parameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3D_INTERFACE_DEFINED__ */


#ifndef __IPoint3DParamDisplace_INTERFACE_DEFINED__
#define __IPoint3DParamDisplace_INTERFACE_DEFINED__

/* interface IPoint3DParamDisplace */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3DParamDisplace,0x6D57994F,0xC170,0x4ced,0x96,0x8A,0x6A,0xD6,0x9C,0x1A,0x2C,0x7D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6D57994F-C170-4ced-968A-6AD69C1A2C7D")
    IPoint3DParamDisplace : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DX( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DX( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DY( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DY( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DZ( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DZ( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAssociationVertex( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AssociationVertex( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGuidingObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GuidingObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Distance( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Distance( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DParamDisplaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3DParamDisplace __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3DParamDisplace __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DX )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DX )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DY )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DY )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DZ )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DZ )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAssociationVertex )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationVertex )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGuidingObject )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GuidingObject )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Distance )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Distance )( 
            IPoint3DParamDisplace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPoint3DParamDisplaceVtbl;

    interface IPoint3DParamDisplace
    {
        CONST_VTBL struct IPoint3DParamDisplaceVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3DParamDisplace_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3DParamDisplace_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3DParamDisplace_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3DParamDisplace_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3DParamDisplace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3DParamDisplace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3DParamDisplace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3DParamDisplace_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3DParamDisplace_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3DParamDisplace_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3DParamDisplace_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3DParamDisplace_put_DX(This,NewVal)	\
    (This)->lpVtbl -> put_DX(This,NewVal)

#define IPoint3DParamDisplace_get_DX(This,PVal)	\
    (This)->lpVtbl -> get_DX(This,PVal)

#define IPoint3DParamDisplace_put_DY(This,NewVal)	\
    (This)->lpVtbl -> put_DY(This,NewVal)

#define IPoint3DParamDisplace_get_DY(This,PVal)	\
    (This)->lpVtbl -> get_DY(This,PVal)

#define IPoint3DParamDisplace_put_DZ(This,NewVal)	\
    (This)->lpVtbl -> put_DZ(This,NewVal)

#define IPoint3DParamDisplace_get_DZ(This,PVal)	\
    (This)->lpVtbl -> get_DZ(This,PVal)

#define IPoint3DParamDisplace_SetAssociationVertex(This,NewVal,Result)	\
    (This)->lpVtbl -> SetAssociationVertex(This,NewVal,Result)

#define IPoint3DParamDisplace_get_AssociationVertex(This,PVal)	\
    (This)->lpVtbl -> get_AssociationVertex(This,PVal)

#define IPoint3DParamDisplace_SetGuidingObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetGuidingObject(This,NewVal,Result)

#define IPoint3DParamDisplace_get_GuidingObject(This,PVal)	\
    (This)->lpVtbl -> get_GuidingObject(This,PVal)

#define IPoint3DParamDisplace_put_Distance(This,NewVal)	\
    (This)->lpVtbl -> put_Distance(This,NewVal)

#define IPoint3DParamDisplace_get_Distance(This,PVal)	\
    (This)->lpVtbl -> get_Distance(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_put_DX_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamDisplace_put_DX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_get_DX_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamDisplace_get_DX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_put_DY_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamDisplace_put_DY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_get_DY_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamDisplace_get_DY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_put_DZ_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamDisplace_put_DZ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_get_DZ_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamDisplace_get_DZ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_SetAssociationVertex_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamDisplace_SetAssociationVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_get_AssociationVertex_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamDisplace_get_AssociationVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_SetGuidingObject_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamDisplace_SetGuidingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_get_GuidingObject_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamDisplace_get_GuidingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_put_Distance_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamDisplace_put_Distance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamDisplace_get_Distance_Proxy( 
    IPoint3DParamDisplace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamDisplace_get_Distance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3DParamDisplace_INTERFACE_DEFINED__ */


#ifndef __IPoint3DParamIntersect_INTERFACE_DEFINED__
#define __IPoint3DParamIntersect_INTERFACE_DEFINED__

/* interface IPoint3DParamIntersect */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3DParamIntersect,0xC009F9ED,0xED8A,0x4b1e,0xA4,0xCE,0x15,0x6F,0x43,0xC3,0xF6,0xF3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C009F9ED-ED8A-4b1e-A4CE-156F43C3F6F3")
    IPoint3DParamIntersect : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCurveObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSurfaceObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CartPointArray( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Index( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Index( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DParamIntersectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3DParamIntersect __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3DParamIntersect __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCurveObject )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurveObject )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSurfaceObject )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfaceObject )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CartPointArray )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Index )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Index )( 
            IPoint3DParamIntersect __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPoint3DParamIntersectVtbl;

    interface IPoint3DParamIntersect
    {
        CONST_VTBL struct IPoint3DParamIntersectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3DParamIntersect_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3DParamIntersect_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3DParamIntersect_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3DParamIntersect_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3DParamIntersect_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3DParamIntersect_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3DParamIntersect_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3DParamIntersect_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3DParamIntersect_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3DParamIntersect_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3DParamIntersect_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3DParamIntersect_SetCurveObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetCurveObject(This,NewVal,Result)

#define IPoint3DParamIntersect_get_CurveObject(This,PVal)	\
    (This)->lpVtbl -> get_CurveObject(This,PVal)

#define IPoint3DParamIntersect_SetSurfaceObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetSurfaceObject(This,NewVal,Result)

#define IPoint3DParamIntersect_get_SurfaceObject(This,PVal)	\
    (This)->lpVtbl -> get_SurfaceObject(This,PVal)

#define IPoint3DParamIntersect_get_CartPointArray(This,Result)	\
    (This)->lpVtbl -> get_CartPointArray(This,Result)

#define IPoint3DParamIntersect_put_Index(This,NewVal)	\
    (This)->lpVtbl -> put_Index(This,NewVal)

#define IPoint3DParamIntersect_get_Index(This,PVal)	\
    (This)->lpVtbl -> get_Index(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_SetCurveObject_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamIntersect_SetCurveObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_get_CurveObject_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamIntersect_get_CurveObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_SetSurfaceObject_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamIntersect_SetSurfaceObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_get_SurfaceObject_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamIntersect_get_SurfaceObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_get_CartPointArray_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamIntersect_get_CartPointArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_put_Index_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPoint3DParamIntersect_put_Index_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamIntersect_get_Index_Proxy( 
    IPoint3DParamIntersect __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamIntersect_get_Index_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3DParamIntersect_INTERFACE_DEFINED__ */


#ifndef __IPoint3DParamCenter_INTERFACE_DEFINED__
#define __IPoint3DParamCenter_INTERFACE_DEFINED__

/* interface IPoint3DParamCenter */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3DParamCenter,0xA92F2938,0xF1D4,0x475e,0xAA,0xB4,0x96,0x2F,0xAA,0x4A,0x43,0x66);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A92F2938-F1D4-475e-AAB4-962FAA4A4366")
    IPoint3DParamCenter : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DParamCenterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3DParamCenter __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3DParamCenter __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObject )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object )( 
            IPoint3DParamCenter __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IPoint3DParamCenterVtbl;

    interface IPoint3DParamCenter
    {
        CONST_VTBL struct IPoint3DParamCenterVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3DParamCenter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3DParamCenter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3DParamCenter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3DParamCenter_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3DParamCenter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3DParamCenter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3DParamCenter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3DParamCenter_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3DParamCenter_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3DParamCenter_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3DParamCenter_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3DParamCenter_SetObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetObject(This,NewVal,Result)

#define IPoint3DParamCenter_get_Object(This,PVal)	\
    (This)->lpVtbl -> get_Object(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCenter_SetObject_Proxy( 
    IPoint3DParamCenter __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamCenter_SetObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCenter_get_Object_Proxy( 
    IPoint3DParamCenter __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamCenter_get_Object_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3DParamCenter_INTERFACE_DEFINED__ */


#ifndef __IPoint3DParamCurve_INTERFACE_DEFINED__
#define __IPoint3DParamCurve_INTERFACE_DEFINED__

/* interface IPoint3DParamCurve */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3DParamCurve,0x06B6BDA5,0x1DC6,0x4321,0x8B,0x28,0xAC,0x06,0x5D,0x87,0xE0,0x60);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("06B6BDA5-1DC6-4321-8B28-AC065D87E060")
    IPoint3DParamCurve : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCurveObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurveObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OffsetType( 
            /* [in] */ /* external definition not present */ ksPoint3DCurveParamTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OffsetType( 
            /* [retval][out] */ /* external definition not present */ ksPoint3DCurveParamTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Offset( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Offset( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DParamCurveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3DParamCurve __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3DParamCurve __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCurveObject )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurveObject )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OffsetType )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DCurveParamTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OffsetType )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DCurveParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Offset )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Offset )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IPoint3DParamCurve __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPoint3DParamCurveVtbl;

    interface IPoint3DParamCurve
    {
        CONST_VTBL struct IPoint3DParamCurveVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3DParamCurve_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3DParamCurve_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3DParamCurve_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3DParamCurve_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3DParamCurve_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3DParamCurve_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3DParamCurve_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3DParamCurve_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3DParamCurve_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3DParamCurve_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3DParamCurve_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3DParamCurve_SetCurveObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetCurveObject(This,NewVal,Result)

#define IPoint3DParamCurve_get_CurveObject(This,PVal)	\
    (This)->lpVtbl -> get_CurveObject(This,PVal)

#define IPoint3DParamCurve_put_OffsetType(This,NewVal)	\
    (This)->lpVtbl -> put_OffsetType(This,NewVal)

#define IPoint3DParamCurve_get_OffsetType(This,PVal)	\
    (This)->lpVtbl -> get_OffsetType(This,PVal)

#define IPoint3DParamCurve_put_Offset(This,NewVal)	\
    (This)->lpVtbl -> put_Offset(This,NewVal)

#define IPoint3DParamCurve_get_Offset(This,PVal)	\
    (This)->lpVtbl -> get_Offset(This,PVal)

#define IPoint3DParamCurve_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IPoint3DParamCurve_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_SetCurveObject_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamCurve_SetCurveObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_get_CurveObject_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamCurve_get_CurveObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_put_OffsetType_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksPoint3DCurveParamTypeEnum NewVal);


void __RPC_STUB IPoint3DParamCurve_put_OffsetType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_get_OffsetType_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksPoint3DCurveParamTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamCurve_get_OffsetType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_put_Offset_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamCurve_put_Offset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_get_Offset_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamCurve_get_Offset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_put_Direction_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IPoint3DParamCurve_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamCurve_get_Direction_Proxy( 
    IPoint3DParamCurve __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamCurve_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3DParamCurve_INTERFACE_DEFINED__ */


#ifndef __IPoint3DParamSurface_INTERFACE_DEFINED__
#define __IPoint3DParamSurface_INTERFACE_DEFINED__

/* interface IPoint3DParamSurface */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3DParamSurface,0x18CE6BBE,0x63FB,0x4c94,0x89,0x98,0xE4,0x0B,0xC5,0xB5,0xD1,0xC6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("18CE6BBE-63FB-4c94-8998-E40BC5B5D1C6")
    IPoint3DParamSurface : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSurfaceObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OffsetType( 
            /* [in] */ /* external definition not present */ ksPoint3DSurfaceParamTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OffsetType( 
            /* [retval][out] */ /* external definition not present */ ksPoint3DSurfaceParamTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Offset1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Offset1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Offset2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Offset2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetObject1( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object1( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetObject2( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object2( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DParamSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3DParamSurface __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3DParamSurface __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSurfaceObject )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfaceObject )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OffsetType )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DSurfaceParamTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OffsetType )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DSurfaceParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Offset1 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Offset1 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Offset2 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Offset2 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObject1 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object1 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObject2 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object2 )( 
            IPoint3DParamSurface __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IPoint3DParamSurfaceVtbl;

    interface IPoint3DParamSurface
    {
        CONST_VTBL struct IPoint3DParamSurfaceVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3DParamSurface_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3DParamSurface_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3DParamSurface_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3DParamSurface_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3DParamSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3DParamSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3DParamSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3DParamSurface_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3DParamSurface_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3DParamSurface_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3DParamSurface_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3DParamSurface_SetSurfaceObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetSurfaceObject(This,NewVal,Result)

#define IPoint3DParamSurface_get_SurfaceObject(This,PVal)	\
    (This)->lpVtbl -> get_SurfaceObject(This,PVal)

#define IPoint3DParamSurface_put_OffsetType(This,NewVal)	\
    (This)->lpVtbl -> put_OffsetType(This,NewVal)

#define IPoint3DParamSurface_get_OffsetType(This,PVal)	\
    (This)->lpVtbl -> get_OffsetType(This,PVal)

#define IPoint3DParamSurface_put_Offset1(This,NewVal)	\
    (This)->lpVtbl -> put_Offset1(This,NewVal)

#define IPoint3DParamSurface_get_Offset1(This,PVal)	\
    (This)->lpVtbl -> get_Offset1(This,PVal)

#define IPoint3DParamSurface_put_Offset2(This,NewVal)	\
    (This)->lpVtbl -> put_Offset2(This,NewVal)

#define IPoint3DParamSurface_get_Offset2(This,PVal)	\
    (This)->lpVtbl -> get_Offset2(This,PVal)

#define IPoint3DParamSurface_SetObject1(This,NewVal,Result)	\
    (This)->lpVtbl -> SetObject1(This,NewVal,Result)

#define IPoint3DParamSurface_get_Object1(This,PVal)	\
    (This)->lpVtbl -> get_Object1(This,PVal)

#define IPoint3DParamSurface_SetObject2(This,NewVal,Result)	\
    (This)->lpVtbl -> SetObject2(This,NewVal,Result)

#define IPoint3DParamSurface_get_Object2(This,PVal)	\
    (This)->lpVtbl -> get_Object2(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_SetSurfaceObject_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamSurface_SetSurfaceObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_get_SurfaceObject_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamSurface_get_SurfaceObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_put_OffsetType_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksPoint3DSurfaceParamTypeEnum NewVal);


void __RPC_STUB IPoint3DParamSurface_put_OffsetType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_get_OffsetType_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksPoint3DSurfaceParamTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamSurface_get_OffsetType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_put_Offset1_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamSurface_put_Offset1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_get_Offset1_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamSurface_get_Offset1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_put_Offset2_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint3DParamSurface_put_Offset2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_get_Offset2_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamSurface_get_Offset2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_SetObject1_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamSurface_SetObject1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_get_Object1_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamSurface_get_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_SetObject2_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamSurface_SetObject2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamSurface_get_Object2_Proxy( 
    IPoint3DParamSurface __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamSurface_get_Object2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3DParamSurface_INTERFACE_DEFINED__ */


#ifndef __IPoint3DParamProjection_INTERFACE_DEFINED__
#define __IPoint3DParamProjection_INTERFACE_DEFINED__

/* interface IPoint3DParamProjection */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint3DParamProjection,0xB5D353DD,0x5F26,0x42fd,0x87,0xD3,0x01,0xC9,0x7C,0x44,0xE1,0xBF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B5D353DD-5F26-42fd-87D3-01C97C44E1BF")
    IPoint3DParamProjection : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAssociationVertex( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AssociationVertex( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSurfaceObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGuidingObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GuidingObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPoint3DParamProjectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint3DParamProjection __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint3DParamProjection __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAssociationVertex )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationVertex )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSurfaceObject )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfaceObject )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGuidingObject )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GuidingObject )( 
            IPoint3DParamProjection __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IPoint3DParamProjectionVtbl;

    interface IPoint3DParamProjection
    {
        CONST_VTBL struct IPoint3DParamProjectionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint3DParamProjection_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint3DParamProjection_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint3DParamProjection_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint3DParamProjection_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint3DParamProjection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint3DParamProjection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint3DParamProjection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint3DParamProjection_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint3DParamProjection_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint3DParamProjection_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint3DParamProjection_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint3DParamProjection_SetAssociationVertex(This,NewVal,Result)	\
    (This)->lpVtbl -> SetAssociationVertex(This,NewVal,Result)

#define IPoint3DParamProjection_get_AssociationVertex(This,PVal)	\
    (This)->lpVtbl -> get_AssociationVertex(This,PVal)

#define IPoint3DParamProjection_SetSurfaceObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetSurfaceObject(This,NewVal,Result)

#define IPoint3DParamProjection_get_SurfaceObject(This,PVal)	\
    (This)->lpVtbl -> get_SurfaceObject(This,PVal)

#define IPoint3DParamProjection_SetGuidingObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetGuidingObject(This,NewVal,Result)

#define IPoint3DParamProjection_get_GuidingObject(This,PVal)	\
    (This)->lpVtbl -> get_GuidingObject(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamProjection_SetAssociationVertex_Proxy( 
    IPoint3DParamProjection __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamProjection_SetAssociationVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamProjection_get_AssociationVertex_Proxy( 
    IPoint3DParamProjection __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamProjection_get_AssociationVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamProjection_SetSurfaceObject_Proxy( 
    IPoint3DParamProjection __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamProjection_SetSurfaceObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamProjection_get_SurfaceObject_Proxy( 
    IPoint3DParamProjection __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamProjection_get_SurfaceObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoint3DParamProjection_SetGuidingObject_Proxy( 
    IPoint3DParamProjection __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPoint3DParamProjection_SetGuidingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint3DParamProjection_get_GuidingObject_Proxy( 
    IPoint3DParamProjection __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPoint3DParamProjection_get_GuidingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint3DParamProjection_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalBends_INTERFACE_DEFINED__
#define __ISheetMetalBends_INTERFACE_DEFINED__

/* interface ISheetMetalBends */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalBends,0x6826CFD6,0x6A48,0x4eb1,0x8C,0x89,0x7D,0xB4,0xE3,0x67,0x02,0xB4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6826CFD6-6A48-4eb1-8C89-7DB4E36702B4")
    ISheetMetalBends : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalBend( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalBend __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISheetMetalBend __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalBendsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalBends __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalBends __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalBend )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalBend __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISheetMetalBends __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalBend __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISheetMetalBendsVtbl;

    interface ISheetMetalBends
    {
        CONST_VTBL struct ISheetMetalBendsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalBends_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalBends_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalBends_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalBends_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalBends_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalBends_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalBends_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalBends_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalBends_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalBends_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalBends_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalBends_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISheetMetalBends_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISheetMetalBends_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISheetMetalBends_get_SheetMetalBend(This,Index,Result)	\
    (This)->lpVtbl -> get_SheetMetalBend(This,Index,Result)

#define ISheetMetalBends_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBends_get_SheetMetalBend_Proxy( 
    ISheetMetalBends __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISheetMetalBend __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalBends_get_SheetMetalBend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalBends_Add_Proxy( 
    ISheetMetalBends __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalBend __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalBends_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalBends_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalBend_INTERFACE_DEFINED__
#define __ISheetMetalBend_INTERFACE_DEFINED__

/* interface ISheetMetalBend */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalBend,0xB631D95F,0xC487,0x41d6,0x97,0x26,0xC6,0x5E,0x9F,0x5A,0x45,0x05);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B631D95F-C487-41d6-9726-C65E9F5A4505")
    ISheetMetalBend : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Disposal( 
            /* [in] */ /* external definition not present */ ksBendDisposalEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Disposal( 
            /* [retval][out] */ /* external definition not present */ ksBendDisposalEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LengthType( 
            /* [in] */ /* external definition not present */ ksBendLengthTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LengthType( 
            /* [retval][out] */ /* external definition not present */ ksBendLengthTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InternalLength( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InternalLength( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AngleType( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OffsetType( 
            /* [in] */ /* external definition not present */ ksBendOffsetTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OffsetType( 
            /* [retval][out] */ /* external definition not present */ ksBendOffsetTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Offset( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Offset( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Straighten( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Straighten( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeftSideType( 
            /* [in] */ /* external definition not present */ ksBendSideTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeftSideType( 
            /* [retval][out] */ /* external definition not present */ ksBendSideTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DistanceLeftSide( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DistanceLeftSide( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeftSideAngle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeftSideAngle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeviationLeftSide( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeviationLeftSide( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WideningLeftSide( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WideningLeftSide( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RightSideType( 
            /* [in] */ /* external definition not present */ ksBendSideTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RightSideType( 
            /* [retval][out] */ /* external definition not present */ ksBendSideTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DistanceRightSide( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DistanceRightSide( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RightSideAngle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RightSideAngle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DeviationRightSide( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DeviationRightSide( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WideningRightSide( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WideningRightSide( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WithoutAngleRelease( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WithoutAngleRelease( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WithoutBendRelease( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WithoutBendRelease( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DismissalWithWidth( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DismissalWithWidth( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendRelease( 
            /* [in] */ /* external definition not present */ ksBendReleaseTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendRelease( 
            /* [retval][out] */ /* external definition not present */ ksBendReleaseTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DismissalWidth( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DismissalWidth( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DismissalDepth( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DismissalDepth( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DismissalAngleType( 
            /* [in] */ /* external definition not present */ ksBendAngleReleaseTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DismissalAngleType( 
            /* [retval][out] */ /* external definition not present */ ksBendAngleReleaseTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendObject( 
            /* [in] */ IModelObject __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InternalRadius( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InternalRadius( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnfoldType( 
            /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnfoldType( 
            /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendCoefficient( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendCoefficient( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendValue( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendValue( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendReduction( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendReduction( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendTablePath( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalBendVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalBend __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalBend __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Disposal )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendDisposalEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Disposal )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendDisposalEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LengthType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendLengthTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LengthType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendLengthTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InternalLength )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InternalLength )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AngleType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AngleType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OffsetType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendOffsetTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OffsetType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendOffsetTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Offset )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Offset )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Straighten )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Straighten )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeftSideType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendSideTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeftSideType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendSideTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DistanceLeftSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DistanceLeftSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeftSideAngle )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeftSideAngle )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeviationLeftSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeviationLeftSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WideningLeftSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WideningLeftSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RightSideType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendSideTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RightSideType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendSideTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DistanceRightSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DistanceRightSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RightSideAngle )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RightSideAngle )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DeviationRightSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DeviationRightSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WideningRightSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WideningRightSide )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WithoutAngleRelease )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WithoutAngleRelease )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WithoutBendRelease )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WithoutBendRelease )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DismissalWithWidth )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DismissalWithWidth )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendRelease )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendReleaseTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendRelease )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendReleaseTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DismissalWidth )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DismissalWidth )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DismissalDepth )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DismissalDepth )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DismissalAngleType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendAngleReleaseTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DismissalAngleType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendAngleReleaseTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendObject )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendObject )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InternalRadius )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InternalRadius )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UnfoldType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnfoldType )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendCoefficient )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendCoefficient )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendValue )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendValue )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendReduction )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendReduction )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendTablePath )( 
            ISheetMetalBend __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        END_INTERFACE
    } ISheetMetalBendVtbl;

    interface ISheetMetalBend
    {
        CONST_VTBL struct ISheetMetalBendVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalBend_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalBend_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalBend_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalBend_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalBend_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalBend_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalBend_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalBend_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalBend_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalBend_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalBend_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalBend_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISheetMetalBend_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISheetMetalBend_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISheetMetalBend_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISheetMetalBend_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISheetMetalBend_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISheetMetalBend_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISheetMetalBend_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISheetMetalBend_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISheetMetalBend_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define ISheetMetalBend_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define ISheetMetalBend_put_Disposal(This,NewVal)	\
    (This)->lpVtbl -> put_Disposal(This,NewVal)

#define ISheetMetalBend_get_Disposal(This,PVal)	\
    (This)->lpVtbl -> get_Disposal(This,PVal)

#define ISheetMetalBend_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define ISheetMetalBend_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#define ISheetMetalBend_put_LengthType(This,NewVal)	\
    (This)->lpVtbl -> put_LengthType(This,NewVal)

#define ISheetMetalBend_get_LengthType(This,PVal)	\
    (This)->lpVtbl -> get_LengthType(This,PVal)

#define ISheetMetalBend_put_InternalLength(This,NewVal)	\
    (This)->lpVtbl -> put_InternalLength(This,NewVal)

#define ISheetMetalBend_get_InternalLength(This,PVal)	\
    (This)->lpVtbl -> get_InternalLength(This,PVal)

#define ISheetMetalBend_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define ISheetMetalBend_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define ISheetMetalBend_put_AngleType(This,NewVal)	\
    (This)->lpVtbl -> put_AngleType(This,NewVal)

#define ISheetMetalBend_get_AngleType(This,PVal)	\
    (This)->lpVtbl -> get_AngleType(This,PVal)

#define ISheetMetalBend_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define ISheetMetalBend_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ISheetMetalBend_put_OffsetType(This,NewVal)	\
    (This)->lpVtbl -> put_OffsetType(This,NewVal)

#define ISheetMetalBend_get_OffsetType(This,PVal)	\
    (This)->lpVtbl -> get_OffsetType(This,PVal)

#define ISheetMetalBend_put_Offset(This,NewVal)	\
    (This)->lpVtbl -> put_Offset(This,NewVal)

#define ISheetMetalBend_get_Offset(This,PVal)	\
    (This)->lpVtbl -> get_Offset(This,PVal)

#define ISheetMetalBend_put_Straighten(This,NewVal)	\
    (This)->lpVtbl -> put_Straighten(This,NewVal)

#define ISheetMetalBend_get_Straighten(This,PVal)	\
    (This)->lpVtbl -> get_Straighten(This,PVal)

#define ISheetMetalBend_put_LeftSideType(This,NewVal)	\
    (This)->lpVtbl -> put_LeftSideType(This,NewVal)

#define ISheetMetalBend_get_LeftSideType(This,PVal)	\
    (This)->lpVtbl -> get_LeftSideType(This,PVal)

#define ISheetMetalBend_put_DistanceLeftSide(This,NewVal)	\
    (This)->lpVtbl -> put_DistanceLeftSide(This,NewVal)

#define ISheetMetalBend_get_DistanceLeftSide(This,PVal)	\
    (This)->lpVtbl -> get_DistanceLeftSide(This,PVal)

#define ISheetMetalBend_put_LeftSideAngle(This,NewVal)	\
    (This)->lpVtbl -> put_LeftSideAngle(This,NewVal)

#define ISheetMetalBend_get_LeftSideAngle(This,PVal)	\
    (This)->lpVtbl -> get_LeftSideAngle(This,PVal)

#define ISheetMetalBend_put_DeviationLeftSide(This,NewVal)	\
    (This)->lpVtbl -> put_DeviationLeftSide(This,NewVal)

#define ISheetMetalBend_get_DeviationLeftSide(This,PVal)	\
    (This)->lpVtbl -> get_DeviationLeftSide(This,PVal)

#define ISheetMetalBend_put_WideningLeftSide(This,NewVal)	\
    (This)->lpVtbl -> put_WideningLeftSide(This,NewVal)

#define ISheetMetalBend_get_WideningLeftSide(This,PVal)	\
    (This)->lpVtbl -> get_WideningLeftSide(This,PVal)

#define ISheetMetalBend_put_RightSideType(This,NewVal)	\
    (This)->lpVtbl -> put_RightSideType(This,NewVal)

#define ISheetMetalBend_get_RightSideType(This,PVal)	\
    (This)->lpVtbl -> get_RightSideType(This,PVal)

#define ISheetMetalBend_put_DistanceRightSide(This,NewVal)	\
    (This)->lpVtbl -> put_DistanceRightSide(This,NewVal)

#define ISheetMetalBend_get_DistanceRightSide(This,PVal)	\
    (This)->lpVtbl -> get_DistanceRightSide(This,PVal)

#define ISheetMetalBend_put_RightSideAngle(This,NewVal)	\
    (This)->lpVtbl -> put_RightSideAngle(This,NewVal)

#define ISheetMetalBend_get_RightSideAngle(This,PVal)	\
    (This)->lpVtbl -> get_RightSideAngle(This,PVal)

#define ISheetMetalBend_put_DeviationRightSide(This,NewVal)	\
    (This)->lpVtbl -> put_DeviationRightSide(This,NewVal)

#define ISheetMetalBend_get_DeviationRightSide(This,PVal)	\
    (This)->lpVtbl -> get_DeviationRightSide(This,PVal)

#define ISheetMetalBend_put_WideningRightSide(This,NewVal)	\
    (This)->lpVtbl -> put_WideningRightSide(This,NewVal)

#define ISheetMetalBend_get_WideningRightSide(This,PVal)	\
    (This)->lpVtbl -> get_WideningRightSide(This,PVal)

#define ISheetMetalBend_put_WithoutAngleRelease(This,NewVal)	\
    (This)->lpVtbl -> put_WithoutAngleRelease(This,NewVal)

#define ISheetMetalBend_get_WithoutAngleRelease(This,PVal)	\
    (This)->lpVtbl -> get_WithoutAngleRelease(This,PVal)

#define ISheetMetalBend_put_WithoutBendRelease(This,NewVal)	\
    (This)->lpVtbl -> put_WithoutBendRelease(This,NewVal)

#define ISheetMetalBend_get_WithoutBendRelease(This,PVal)	\
    (This)->lpVtbl -> get_WithoutBendRelease(This,PVal)

#define ISheetMetalBend_put_DismissalWithWidth(This,NewVal)	\
    (This)->lpVtbl -> put_DismissalWithWidth(This,NewVal)

#define ISheetMetalBend_get_DismissalWithWidth(This,PVal)	\
    (This)->lpVtbl -> get_DismissalWithWidth(This,PVal)

#define ISheetMetalBend_put_BendRelease(This,NewVal)	\
    (This)->lpVtbl -> put_BendRelease(This,NewVal)

#define ISheetMetalBend_get_BendRelease(This,PVal)	\
    (This)->lpVtbl -> get_BendRelease(This,PVal)

#define ISheetMetalBend_put_DismissalWidth(This,NewVal)	\
    (This)->lpVtbl -> put_DismissalWidth(This,NewVal)

#define ISheetMetalBend_get_DismissalWidth(This,PVal)	\
    (This)->lpVtbl -> get_DismissalWidth(This,PVal)

#define ISheetMetalBend_put_DismissalDepth(This,NewVal)	\
    (This)->lpVtbl -> put_DismissalDepth(This,NewVal)

#define ISheetMetalBend_get_DismissalDepth(This,PVal)	\
    (This)->lpVtbl -> get_DismissalDepth(This,PVal)

#define ISheetMetalBend_put_DismissalAngleType(This,NewVal)	\
    (This)->lpVtbl -> put_DismissalAngleType(This,NewVal)

#define ISheetMetalBend_get_DismissalAngleType(This,PVal)	\
    (This)->lpVtbl -> get_DismissalAngleType(This,PVal)

#define ISheetMetalBend_put_BendObject(This,PVal)	\
    (This)->lpVtbl -> put_BendObject(This,PVal)

#define ISheetMetalBend_get_BendObject(This,Result)	\
    (This)->lpVtbl -> get_BendObject(This,Result)

#define ISheetMetalBend_put_InternalRadius(This,NewVal)	\
    (This)->lpVtbl -> put_InternalRadius(This,NewVal)

#define ISheetMetalBend_get_InternalRadius(This,PVal)	\
    (This)->lpVtbl -> get_InternalRadius(This,PVal)

#define ISheetMetalBend_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define ISheetMetalBend_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define ISheetMetalBend_put_UnfoldType(This,NewVal)	\
    (This)->lpVtbl -> put_UnfoldType(This,NewVal)

#define ISheetMetalBend_get_UnfoldType(This,PVal)	\
    (This)->lpVtbl -> get_UnfoldType(This,PVal)

#define ISheetMetalBend_put_BendCoefficient(This,NewVal)	\
    (This)->lpVtbl -> put_BendCoefficient(This,NewVal)

#define ISheetMetalBend_get_BendCoefficient(This,PVal)	\
    (This)->lpVtbl -> get_BendCoefficient(This,PVal)

#define ISheetMetalBend_put_BendValue(This,NewVal)	\
    (This)->lpVtbl -> put_BendValue(This,NewVal)

#define ISheetMetalBend_get_BendValue(This,PVal)	\
    (This)->lpVtbl -> get_BendValue(This,PVal)

#define ISheetMetalBend_put_BendReduction(This,NewVal)	\
    (This)->lpVtbl -> put_BendReduction(This,NewVal)

#define ISheetMetalBend_get_BendReduction(This,PVal)	\
    (This)->lpVtbl -> get_BendReduction(This,PVal)

#define ISheetMetalBend_get_BendTablePath(This,PVal)	\
    (This)->lpVtbl -> get_BendTablePath(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Direction_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Direction_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Disposal_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendDisposalEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_Disposal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Disposal_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendDisposalEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Disposal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Width_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Width_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_LengthType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendLengthTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_LengthType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_LengthType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendLengthTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_LengthType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_InternalLength_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_InternalLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_InternalLength_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_InternalLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Length_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Length_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_AngleType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_AngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_AngleType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_AngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Angle_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Angle_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_OffsetType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendOffsetTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_OffsetType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_OffsetType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendOffsetTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_OffsetType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Offset_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_Offset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Offset_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Offset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Straighten_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_Straighten_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Straighten_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Straighten_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_LeftSideType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendSideTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_LeftSideType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_LeftSideType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendSideTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_LeftSideType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DistanceLeftSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_DistanceLeftSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DistanceLeftSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DistanceLeftSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_LeftSideAngle_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_LeftSideAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_LeftSideAngle_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_LeftSideAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DeviationLeftSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_DeviationLeftSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DeviationLeftSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DeviationLeftSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_WideningLeftSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_WideningLeftSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_WideningLeftSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_WideningLeftSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_RightSideType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendSideTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_RightSideType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_RightSideType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendSideTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_RightSideType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DistanceRightSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_DistanceRightSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DistanceRightSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DistanceRightSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_RightSideAngle_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_RightSideAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_RightSideAngle_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_RightSideAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DeviationRightSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_DeviationRightSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DeviationRightSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DeviationRightSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_WideningRightSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_WideningRightSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_WideningRightSide_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_WideningRightSide_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_WithoutAngleRelease_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_WithoutAngleRelease_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_WithoutAngleRelease_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_WithoutAngleRelease_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_WithoutBendRelease_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_WithoutBendRelease_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_WithoutBendRelease_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_WithoutBendRelease_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DismissalWithWidth_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_DismissalWithWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DismissalWithWidth_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DismissalWithWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_BendRelease_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendReleaseTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_BendRelease_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_BendRelease_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendReleaseTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_BendRelease_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DismissalWidth_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_DismissalWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DismissalWidth_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DismissalWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DismissalDepth_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_DismissalDepth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DismissalDepth_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DismissalDepth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_DismissalAngleType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendAngleReleaseTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_DismissalAngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_DismissalAngleType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendAngleReleaseTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_DismissalAngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_BendObject_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_put_BendObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_BendObject_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalBend_get_BendObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_InternalRadius_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalBend_put_InternalRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_InternalRadius_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_InternalRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_Radius_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_Radius_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_UnfoldType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal);


void __RPC_STUB ISheetMetalBend_put_UnfoldType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_UnfoldType_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_UnfoldType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_BendCoefficient_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_BendCoefficient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_BendCoefficient_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_BendCoefficient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_BendValue_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_BendValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_BendValue_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_BendValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_put_BendReduction_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalBend_put_BendReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_BendReduction_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_BendReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalBend_get_BendTablePath_Proxy( 
    ISheetMetalBend __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalBend_get_BendTablePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalBend_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalLineBends_INTERFACE_DEFINED__
#define __ISheetMetalLineBends_INTERFACE_DEFINED__

/* interface ISheetMetalLineBends */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalLineBends,0xAF8B8310,0xAF82,0x4b02,0x87,0x33,0x78,0x3F,0xFA,0xFD,0x4D,0xBD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AF8B8310-AF82-4b02-8733-783FFAFD4DBD")
    ISheetMetalLineBends : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalLineBend( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalLineBend __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISheetMetalLineBend __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalLineBendsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalLineBends __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalLineBends __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalLineBend )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalLineBend __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISheetMetalLineBends __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalLineBend __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISheetMetalLineBendsVtbl;

    interface ISheetMetalLineBends
    {
        CONST_VTBL struct ISheetMetalLineBendsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalLineBends_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalLineBends_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalLineBends_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalLineBends_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalLineBends_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalLineBends_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalLineBends_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalLineBends_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalLineBends_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalLineBends_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalLineBends_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalLineBends_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISheetMetalLineBends_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISheetMetalLineBends_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISheetMetalLineBends_get_SheetMetalLineBend(This,Index,Result)	\
    (This)->lpVtbl -> get_SheetMetalLineBend(This,Index,Result)

#define ISheetMetalLineBends_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBends_get_SheetMetalLineBend_Proxy( 
    ISheetMetalLineBends __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISheetMetalLineBend __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalLineBends_get_SheetMetalLineBend_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBends_Add_Proxy( 
    ISheetMetalLineBends __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalLineBend __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalLineBends_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalLineBends_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalLineBend_INTERFACE_DEFINED__
#define __ISheetMetalLineBend_INTERFACE_DEFINED__

/* interface ISheetMetalLineBend */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalLineBend,0xE13EF07A,0xB1E8,0x41fd,0x9C,0x85,0xC1,0x7F,0x01,0xE5,0x2A,0x03);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E13EF07A-B1E8-41fd-9C85-C17F01E52A03")
    ISheetMetalLineBend : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendLeftSideFixed( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendLeftSideFixed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AngleType( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendType( 
            /* [in] */ /* external definition not present */ ksBendTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendType( 
            /* [retval][out] */ /* external definition not present */ ksBendTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Straighten( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Straighten( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DismissalAngleType( 
            /* [in] */ /* external definition not present */ ksBendAngleReleaseTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DismissalAngleType( 
            /* [retval][out] */ /* external definition not present */ ksBendAngleReleaseTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InternalRadius( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InternalRadius( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UnfoldType( 
            /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnfoldType( 
            /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendCoefficient( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendCoefficient( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendValue( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendValue( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BendReduction( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendReduction( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BendTablePath( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Faces( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Faces( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Line( 
            /* [in] */ IModelObject __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Line( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalLineBendVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalLineBend __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalLineBend __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendLeftSideFixed )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendLeftSideFixed )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AngleType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AngleType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Straighten )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Straighten )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DismissalAngleType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksBendAngleReleaseTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DismissalAngleType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksBendAngleReleaseTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InternalRadius )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InternalRadius )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UnfoldType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnfoldType )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendCoefficient )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendCoefficient )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendValue )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendValue )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BendReduction )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendReduction )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BendTablePath )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Faces )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Faces )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Line )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Line )( 
            ISheetMetalLineBend __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISheetMetalLineBendVtbl;

    interface ISheetMetalLineBend
    {
        CONST_VTBL struct ISheetMetalLineBendVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalLineBend_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalLineBend_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalLineBend_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalLineBend_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalLineBend_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalLineBend_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalLineBend_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalLineBend_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalLineBend_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalLineBend_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalLineBend_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalLineBend_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISheetMetalLineBend_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISheetMetalLineBend_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISheetMetalLineBend_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISheetMetalLineBend_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISheetMetalLineBend_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISheetMetalLineBend_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISheetMetalLineBend_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISheetMetalLineBend_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISheetMetalLineBend_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define ISheetMetalLineBend_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define ISheetMetalLineBend_put_BendLeftSideFixed(This,NewVal)	\
    (This)->lpVtbl -> put_BendLeftSideFixed(This,NewVal)

#define ISheetMetalLineBend_get_BendLeftSideFixed(This,PVal)	\
    (This)->lpVtbl -> get_BendLeftSideFixed(This,PVal)

#define ISheetMetalLineBend_put_AngleType(This,NewVal)	\
    (This)->lpVtbl -> put_AngleType(This,NewVal)

#define ISheetMetalLineBend_get_AngleType(This,PVal)	\
    (This)->lpVtbl -> get_AngleType(This,PVal)

#define ISheetMetalLineBend_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define ISheetMetalLineBend_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ISheetMetalLineBend_put_BendType(This,NewVal)	\
    (This)->lpVtbl -> put_BendType(This,NewVal)

#define ISheetMetalLineBend_get_BendType(This,PVal)	\
    (This)->lpVtbl -> get_BendType(This,PVal)

#define ISheetMetalLineBend_put_Straighten(This,NewVal)	\
    (This)->lpVtbl -> put_Straighten(This,NewVal)

#define ISheetMetalLineBend_get_Straighten(This,PVal)	\
    (This)->lpVtbl -> get_Straighten(This,PVal)

#define ISheetMetalLineBend_put_DismissalAngleType(This,NewVal)	\
    (This)->lpVtbl -> put_DismissalAngleType(This,NewVal)

#define ISheetMetalLineBend_get_DismissalAngleType(This,PVal)	\
    (This)->lpVtbl -> get_DismissalAngleType(This,PVal)

#define ISheetMetalLineBend_put_InternalRadius(This,NewVal)	\
    (This)->lpVtbl -> put_InternalRadius(This,NewVal)

#define ISheetMetalLineBend_get_InternalRadius(This,PVal)	\
    (This)->lpVtbl -> get_InternalRadius(This,PVal)

#define ISheetMetalLineBend_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define ISheetMetalLineBend_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define ISheetMetalLineBend_put_UnfoldType(This,NewVal)	\
    (This)->lpVtbl -> put_UnfoldType(This,NewVal)

#define ISheetMetalLineBend_get_UnfoldType(This,PVal)	\
    (This)->lpVtbl -> get_UnfoldType(This,PVal)

#define ISheetMetalLineBend_put_BendCoefficient(This,NewVal)	\
    (This)->lpVtbl -> put_BendCoefficient(This,NewVal)

#define ISheetMetalLineBend_get_BendCoefficient(This,PVal)	\
    (This)->lpVtbl -> get_BendCoefficient(This,PVal)

#define ISheetMetalLineBend_put_BendValue(This,NewVal)	\
    (This)->lpVtbl -> put_BendValue(This,NewVal)

#define ISheetMetalLineBend_get_BendValue(This,PVal)	\
    (This)->lpVtbl -> get_BendValue(This,PVal)

#define ISheetMetalLineBend_put_BendReduction(This,NewVal)	\
    (This)->lpVtbl -> put_BendReduction(This,NewVal)

#define ISheetMetalLineBend_get_BendReduction(This,PVal)	\
    (This)->lpVtbl -> get_BendReduction(This,PVal)

#define ISheetMetalLineBend_get_BendTablePath(This,PVal)	\
    (This)->lpVtbl -> get_BendTablePath(This,PVal)

#define ISheetMetalLineBend_put_Faces(This,NewVal)	\
    (This)->lpVtbl -> put_Faces(This,NewVal)

#define ISheetMetalLineBend_get_Faces(This,Result)	\
    (This)->lpVtbl -> get_Faces(This,Result)

#define ISheetMetalLineBend_put_Line(This,PVal)	\
    (This)->lpVtbl -> put_Line(This,PVal)

#define ISheetMetalLineBend_get_Line(This,Result)	\
    (This)->lpVtbl -> get_Line(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_Direction_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalLineBend_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_Direction_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_BendLeftSideFixed_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalLineBend_put_BendLeftSideFixed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_BendLeftSideFixed_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_BendLeftSideFixed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_AngleType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalLineBend_put_AngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_AngleType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_AngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_Angle_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalLineBend_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_Angle_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_BendType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendTypeEnum NewVal);


void __RPC_STUB ISheetMetalLineBend_put_BendType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_BendType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_BendType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_Straighten_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalLineBend_put_Straighten_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_Straighten_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_Straighten_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_DismissalAngleType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksBendAngleReleaseTypeEnum NewVal);


void __RPC_STUB ISheetMetalLineBend_put_DismissalAngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_DismissalAngleType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksBendAngleReleaseTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_DismissalAngleType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_InternalRadius_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalLineBend_put_InternalRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_InternalRadius_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_InternalRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_Radius_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalLineBend_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_Radius_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_UnfoldType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksUnfoldTypeEnum NewVal);


void __RPC_STUB ISheetMetalLineBend_put_UnfoldType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_UnfoldType_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksUnfoldTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_UnfoldType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_BendCoefficient_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalLineBend_put_BendCoefficient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_BendCoefficient_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_BendCoefficient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_BendValue_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalLineBend_put_BendValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_BendValue_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_BendValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_BendReduction_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalLineBend_put_BendReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_BendReduction_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_BendReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_BendTablePath_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_get_BendTablePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_Faces_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB ISheetMetalLineBend_put_Faces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_Faces_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ISheetMetalLineBend_get_Faces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_put_Line_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalLineBend_put_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalLineBend_get_Line_Proxy( 
    ISheetMetalLineBend __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalLineBend_get_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalLineBend_INTERFACE_DEFINED__ */


#ifndef __ISourcePart7Params_INTERFACE_DEFINED__
#define __ISourcePart7Params_INTERFACE_DEFINED__

/* interface ISourcePart7Params */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISourcePart7Params,0xC9E03A9B,0x0A54,0x49ac,0x93,0x97,0x8D,0xE4,0x46,0x5A,0x8D,0x1D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C9E03A9B-0A54-49ac-9397-8DE4465A8D1D")
    ISourcePart7Params : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SourceName( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceMarking( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SourceMarking( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentAuthor( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DocumentAuthor( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DocumentComment( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DocumentComment( 
            /* [in] */ VARIANT PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISourcePart7ParamsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISourcePart7Params __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISourcePart7Params __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceName )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SourceName )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceMarking )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SourceMarking )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentAuthor )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DocumentAuthor )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DocumentComment )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DocumentComment )( 
            ISourcePart7Params __RPC_FAR * This,
            /* [in] */ VARIANT PVal);
        
        END_INTERFACE
    } ISourcePart7ParamsVtbl;

    interface ISourcePart7Params
    {
        CONST_VTBL struct ISourcePart7ParamsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISourcePart7Params_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISourcePart7Params_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISourcePart7Params_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISourcePart7Params_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISourcePart7Params_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISourcePart7Params_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISourcePart7Params_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISourcePart7Params_get_SourceName(This,PVal)	\
    (This)->lpVtbl -> get_SourceName(This,PVal)

#define ISourcePart7Params_put_SourceName(This,PVal)	\
    (This)->lpVtbl -> put_SourceName(This,PVal)

#define ISourcePart7Params_get_SourceMarking(This,PVal)	\
    (This)->lpVtbl -> get_SourceMarking(This,PVal)

#define ISourcePart7Params_put_SourceMarking(This,PVal)	\
    (This)->lpVtbl -> put_SourceMarking(This,PVal)

#define ISourcePart7Params_get_DocumentAuthor(This,PVal)	\
    (This)->lpVtbl -> get_DocumentAuthor(This,PVal)

#define ISourcePart7Params_put_DocumentAuthor(This,PVal)	\
    (This)->lpVtbl -> put_DocumentAuthor(This,PVal)

#define ISourcePart7Params_get_DocumentComment(This,PVal)	\
    (This)->lpVtbl -> get_DocumentComment(This,PVal)

#define ISourcePart7Params_put_DocumentComment(This,PVal)	\
    (This)->lpVtbl -> put_DocumentComment(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_get_SourceName_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISourcePart7Params_get_SourceName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_put_SourceName_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB ISourcePart7Params_put_SourceName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_get_SourceMarking_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISourcePart7Params_get_SourceMarking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_put_SourceMarking_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB ISourcePart7Params_put_SourceMarking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_get_DocumentAuthor_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISourcePart7Params_get_DocumentAuthor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_put_DocumentAuthor_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB ISourcePart7Params_put_DocumentAuthor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_get_DocumentComment_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISourcePart7Params_get_DocumentComment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISourcePart7Params_put_DocumentComment_Proxy( 
    ISourcePart7Params __RPC_FAR * This,
    /* [in] */ VARIANT PVal);


void __RPC_STUB ISourcePart7Params_put_DocumentComment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISourcePart7Params_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalHole_INTERFACE_DEFINED__
#define __ISheetMetalHole_INTERFACE_DEFINED__

/* interface ISheetMetalHole */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalHole,0x3490B8B8,0x00D7,0x4bcf,0xAA,0xD8,0x94,0x87,0xBF,0x27,0x10,0x84);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3490B8B8-00D7-4bcf-AAD8-9487BF271084")
    ISheetMetalHole : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CutType( 
            /* [in] */ /* external definition not present */ ksHoleCutTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutType( 
            /* [retval][out] */ /* external definition not present */ ksHoleCutTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Diameter( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Diameter( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Depth( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Depth( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePlane( 
            /* [in] */ IModelObject __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePlane( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DepthObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DepthObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketch( 
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Body( 
            /* [in] */ IKompasAPIObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Body( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalHoleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalHole __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalHole __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CutType )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksHoleCutTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutType )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksHoleCutTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Diameter )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Diameter )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Depth )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Depth )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BasePlane )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BasePlane )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DepthObject )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DepthObject )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Body )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [in] */ IKompasAPIObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Body )( 
            ISheetMetalHole __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISheetMetalHoleVtbl;

    interface ISheetMetalHole
    {
        CONST_VTBL struct ISheetMetalHoleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalHole_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalHole_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalHole_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalHole_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalHole_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalHole_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalHole_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalHole_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalHole_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalHole_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalHole_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalHole_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISheetMetalHole_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISheetMetalHole_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISheetMetalHole_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISheetMetalHole_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISheetMetalHole_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISheetMetalHole_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISheetMetalHole_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISheetMetalHole_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISheetMetalHole_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define ISheetMetalHole_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define ISheetMetalHole_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define ISheetMetalHole_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define ISheetMetalHole_put_CutType(This,NewVal)	\
    (This)->lpVtbl -> put_CutType(This,NewVal)

#define ISheetMetalHole_get_CutType(This,PVal)	\
    (This)->lpVtbl -> get_CutType(This,PVal)

#define ISheetMetalHole_put_Diameter(This,NewVal)	\
    (This)->lpVtbl -> put_Diameter(This,NewVal)

#define ISheetMetalHole_get_Diameter(This,PVal)	\
    (This)->lpVtbl -> get_Diameter(This,PVal)

#define ISheetMetalHole_put_Depth(This,NewVal)	\
    (This)->lpVtbl -> put_Depth(This,NewVal)

#define ISheetMetalHole_get_Depth(This,PVal)	\
    (This)->lpVtbl -> get_Depth(This,PVal)

#define ISheetMetalHole_put_BasePlane(This,PVal)	\
    (This)->lpVtbl -> put_BasePlane(This,PVal)

#define ISheetMetalHole_get_BasePlane(This,Result)	\
    (This)->lpVtbl -> get_BasePlane(This,Result)

#define ISheetMetalHole_put_DepthObject(This,NewVal)	\
    (This)->lpVtbl -> put_DepthObject(This,NewVal)

#define ISheetMetalHole_get_DepthObject(This,PVal)	\
    (This)->lpVtbl -> get_DepthObject(This,PVal)

#define ISheetMetalHole_get_Sketch(This,PVal)	\
    (This)->lpVtbl -> get_Sketch(This,PVal)

#define ISheetMetalHole_put_Body(This,NewVal)	\
    (This)->lpVtbl -> put_Body(This,NewVal)

#define ISheetMetalHole_get_Body(This,PVal)	\
    (This)->lpVtbl -> get_Body(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_X_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalHole_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_X_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_Y_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalHole_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_Y_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_CutType_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksHoleCutTypeEnum NewVal);


void __RPC_STUB ISheetMetalHole_put_CutType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_CutType_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksHoleCutTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_CutType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_Diameter_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalHole_put_Diameter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_Diameter_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_Diameter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_Depth_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalHole_put_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_Depth_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_BasePlane_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_put_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_BasePlane_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalHole_get_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_DepthObject_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB ISheetMetalHole_put_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_DepthObject_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_Sketch_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_put_Body_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [in] */ IKompasAPIObject __RPC_FAR *NewVal);


void __RPC_STUB ISheetMetalHole_put_Body_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHole_get_Body_Proxy( 
    ISheetMetalHole __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalHole_get_Body_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalHole_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalHoles_INTERFACE_DEFINED__
#define __ISheetMetalHoles_INTERFACE_DEFINED__

/* interface ISheetMetalHoles */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalHoles,0xE117BDF9,0x5133,0x4672,0x9B,0x8F,0x06,0x04,0x6F,0x6B,0x9B,0xF3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E117BDF9-5133-4672-9B8F-06046F6B9BF3")
    ISheetMetalHoles : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalHole( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalHole __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISheetMetalHole __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalHolesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalHoles __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalHoles __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalHole )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalHole __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISheetMetalHoles __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalHole __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISheetMetalHolesVtbl;

    interface ISheetMetalHoles
    {
        CONST_VTBL struct ISheetMetalHolesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalHoles_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalHoles_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalHoles_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalHoles_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalHoles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalHoles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalHoles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalHoles_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalHoles_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalHoles_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalHoles_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalHoles_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISheetMetalHoles_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISheetMetalHoles_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISheetMetalHoles_get_SheetMetalHole(This,Index,Result)	\
    (This)->lpVtbl -> get_SheetMetalHole(This,Index,Result)

#define ISheetMetalHoles_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalHoles_get_SheetMetalHole_Proxy( 
    ISheetMetalHoles __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISheetMetalHole __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalHoles_get_SheetMetalHole_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalHoles_Add_Proxy( 
    ISheetMetalHoles __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalHole __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalHoles_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalHoles_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalCut_INTERFACE_DEFINED__
#define __ISheetMetalCut_INTERFACE_DEFINED__

/* interface ISheetMetalCut */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalCut,0xB50B1730,0xBACF,0x46f2,0xB1,0x0A,0x6C,0xCD,0xF4,0xE4,0xA2,0xB1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B50B1730-BACF-46f2-B10A-6CCDF4E4A2B1")
    ISheetMetalCut : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sketch( 
            /* [in] */ ISketch __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketch( 
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CutType( 
            /* [in] */ /* external definition not present */ ksHoleCutTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutType( 
            /* [retval][out] */ /* external definition not present */ ksHoleCutTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Depth( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Depth( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DepthObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DepthObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Cut( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Cut( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Body( 
            /* [in] */ IKompasAPIObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Body( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalCutVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalCut __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalCut __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sketch )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ ISketch __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CutType )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksHoleCutTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutType )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksHoleCutTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Depth )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Depth )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DepthObject )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DepthObject )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Cut )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Cut )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Body )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [in] */ IKompasAPIObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Body )( 
            ISheetMetalCut __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISheetMetalCutVtbl;

    interface ISheetMetalCut
    {
        CONST_VTBL struct ISheetMetalCutVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalCut_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalCut_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalCut_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalCut_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalCut_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalCut_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalCut_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalCut_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalCut_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalCut_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalCut_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalCut_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISheetMetalCut_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISheetMetalCut_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISheetMetalCut_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISheetMetalCut_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISheetMetalCut_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISheetMetalCut_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISheetMetalCut_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISheetMetalCut_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISheetMetalCut_put_Sketch(This,PVal)	\
    (This)->lpVtbl -> put_Sketch(This,PVal)

#define ISheetMetalCut_get_Sketch(This,Result)	\
    (This)->lpVtbl -> get_Sketch(This,Result)

#define ISheetMetalCut_put_CutType(This,NewVal)	\
    (This)->lpVtbl -> put_CutType(This,NewVal)

#define ISheetMetalCut_get_CutType(This,PVal)	\
    (This)->lpVtbl -> get_CutType(This,PVal)

#define ISheetMetalCut_put_Depth(This,NewVal)	\
    (This)->lpVtbl -> put_Depth(This,NewVal)

#define ISheetMetalCut_get_Depth(This,PVal)	\
    (This)->lpVtbl -> get_Depth(This,PVal)

#define ISheetMetalCut_put_DepthObject(This,NewVal)	\
    (This)->lpVtbl -> put_DepthObject(This,NewVal)

#define ISheetMetalCut_get_DepthObject(This,PVal)	\
    (This)->lpVtbl -> get_DepthObject(This,PVal)

#define ISheetMetalCut_put_Cut(This,NewVal)	\
    (This)->lpVtbl -> put_Cut(This,NewVal)

#define ISheetMetalCut_get_Cut(This,PVal)	\
    (This)->lpVtbl -> get_Cut(This,PVal)

#define ISheetMetalCut_put_Body(This,NewVal)	\
    (This)->lpVtbl -> put_Body(This,NewVal)

#define ISheetMetalCut_get_Body(This,PVal)	\
    (This)->lpVtbl -> get_Body(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_put_Sketch_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [in] */ ISketch __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalCut_put_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_get_Sketch_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalCut_get_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_put_CutType_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksHoleCutTypeEnum NewVal);


void __RPC_STUB ISheetMetalCut_put_CutType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_get_CutType_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksHoleCutTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalCut_get_CutType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_put_Depth_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ISheetMetalCut_put_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_get_Depth_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalCut_get_Depth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_put_DepthObject_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB ISheetMetalCut_put_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_get_DepthObject_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalCut_get_DepthObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_put_Cut_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ISheetMetalCut_put_Cut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_get_Cut_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISheetMetalCut_get_Cut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_put_Body_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [in] */ IKompasAPIObject __RPC_FAR *NewVal);


void __RPC_STUB ISheetMetalCut_put_Body_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCut_get_Body_Proxy( 
    ISheetMetalCut __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISheetMetalCut_get_Body_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalCut_INTERFACE_DEFINED__ */


#ifndef __ISheetMetalCuts_INTERFACE_DEFINED__
#define __ISheetMetalCuts_INTERFACE_DEFINED__

/* interface ISheetMetalCuts */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISheetMetalCuts,0x9515E4BB,0x7C60,0x4c3a,0xAF,0x7A,0x84,0x78,0x61,0xE6,0x7B,0x55);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9515E4BB-7C60-4c3a-AF7A-847861E67B55")
    ISheetMetalCuts : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SheetMetalCut( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalCut __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISheetMetalCut __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISheetMetalCutsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISheetMetalCuts __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISheetMetalCuts __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SheetMetalCut )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISheetMetalCut __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISheetMetalCuts __RPC_FAR * This,
            /* [retval][out] */ ISheetMetalCut __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISheetMetalCutsVtbl;

    interface ISheetMetalCuts
    {
        CONST_VTBL struct ISheetMetalCutsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISheetMetalCuts_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISheetMetalCuts_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISheetMetalCuts_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISheetMetalCuts_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISheetMetalCuts_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISheetMetalCuts_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISheetMetalCuts_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISheetMetalCuts_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISheetMetalCuts_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISheetMetalCuts_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISheetMetalCuts_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISheetMetalCuts_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISheetMetalCuts_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISheetMetalCuts_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISheetMetalCuts_get_SheetMetalCut(This,Index,Result)	\
    (This)->lpVtbl -> get_SheetMetalCut(This,Index,Result)

#define ISheetMetalCuts_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISheetMetalCuts_get_SheetMetalCut_Proxy( 
    ISheetMetalCuts __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISheetMetalCut __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalCuts_get_SheetMetalCut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISheetMetalCuts_Add_Proxy( 
    ISheetMetalCuts __RPC_FAR * This,
    /* [retval][out] */ ISheetMetalCut __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISheetMetalCuts_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISheetMetalCuts_INTERFACE_DEFINED__ */


#ifndef __ISymbols3DContainer_INTERFACE_DEFINED__
#define __ISymbols3DContainer_INTERFACE_DEFINED__

/* interface ISymbols3DContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISymbols3DContainer,0xD695D345,0x7054,0x4bbd,0x8D,0x36,0x8E,0x1F,0x5A,0xED,0xC5,0xED);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D695D345-7054-4bbd-8D36-8E1F5AEDC5ED")
    ISymbols3DContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineDimensions3D( 
            /* [retval][out] */ ILineDimensions3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadialDimensions3D( 
            /* [retval][out] */ IRadialDimensions3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DiametralDimensions3D( 
            /* [retval][out] */ IDiametralDimensions3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleDimensions3D( 
            /* [retval][out] */ IAngleDimensions3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Leaders3D( 
            /* [retval][out] */ ILeaders3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Roughs3D( 
            /* [retval][out] */ IRoughs3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Bases3D( 
            /* [retval][out] */ IBases3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tolerances3D( 
            /* [retval][out] */ ITolerances3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISymbols3DContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISymbols3DContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISymbols3DContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineDimensions3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ ILineDimensions3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RadialDimensions3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ IRadialDimensions3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DiametralDimensions3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ IDiametralDimensions3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AngleDimensions3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ IAngleDimensions3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Leaders3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ ILeaders3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Roughs3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ IRoughs3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Bases3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ IBases3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tolerances3D )( 
            ISymbols3DContainer __RPC_FAR * This,
            /* [retval][out] */ ITolerances3D __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISymbols3DContainerVtbl;

    interface ISymbols3DContainer
    {
        CONST_VTBL struct ISymbols3DContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISymbols3DContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISymbols3DContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISymbols3DContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISymbols3DContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISymbols3DContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISymbols3DContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISymbols3DContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISymbols3DContainer_get_LineDimensions3D(This,PVal)	\
    (This)->lpVtbl -> get_LineDimensions3D(This,PVal)

#define ISymbols3DContainer_get_RadialDimensions3D(This,PVal)	\
    (This)->lpVtbl -> get_RadialDimensions3D(This,PVal)

#define ISymbols3DContainer_get_DiametralDimensions3D(This,PVal)	\
    (This)->lpVtbl -> get_DiametralDimensions3D(This,PVal)

#define ISymbols3DContainer_get_AngleDimensions3D(This,PVal)	\
    (This)->lpVtbl -> get_AngleDimensions3D(This,PVal)

#define ISymbols3DContainer_get_Leaders3D(This,PVal)	\
    (This)->lpVtbl -> get_Leaders3D(This,PVal)

#define ISymbols3DContainer_get_Roughs3D(This,PVal)	\
    (This)->lpVtbl -> get_Roughs3D(This,PVal)

#define ISymbols3DContainer_get_Bases3D(This,PVal)	\
    (This)->lpVtbl -> get_Bases3D(This,PVal)

#define ISymbols3DContainer_get_Tolerances3D(This,PVal)	\
    (This)->lpVtbl -> get_Tolerances3D(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_LineDimensions3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ ILineDimensions3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_LineDimensions3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_RadialDimensions3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ IRadialDimensions3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_RadialDimensions3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_DiametralDimensions3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ IDiametralDimensions3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_DiametralDimensions3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_AngleDimensions3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ IAngleDimensions3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_AngleDimensions3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_Leaders3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ ILeaders3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_Leaders3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_Roughs3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ IRoughs3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_Roughs3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_Bases3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ IBases3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_Bases3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols3DContainer_get_Tolerances3D_Proxy( 
    ISymbols3DContainer __RPC_FAR * This,
    /* [retval][out] */ ITolerances3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols3DContainer_get_Tolerances3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISymbols3DContainer_INTERFACE_DEFINED__ */


#ifndef __ILineDimensions3D_INTERFACE_DEFINED__
#define __ILineDimensions3D_INTERFACE_DEFINED__

/* interface ILineDimensions3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILineDimensions3D,0x8E30C80C,0x4C79,0x497b,0xA7,0x4B,0x84,0xD4,0x4F,0x96,0xEF,0x4D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8E30C80C-4C79-497b-A74B-84D44F96EF4D")
    ILineDimensions3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineDimension3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBaseLineDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum DimType,
            /* [retval][out] */ IBaseLineDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineDimensions3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILineDimensions3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILineDimensions3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineDimension3D )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBaseLineDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILineDimensions3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum DimType,
            /* [retval][out] */ IBaseLineDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ILineDimensions3DVtbl;

    interface ILineDimensions3D
    {
        CONST_VTBL struct ILineDimensions3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILineDimensions3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILineDimensions3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILineDimensions3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILineDimensions3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILineDimensions3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILineDimensions3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILineDimensions3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILineDimensions3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILineDimensions3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILineDimensions3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILineDimensions3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILineDimensions3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILineDimensions3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILineDimensions3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILineDimensions3D_get_LineDimension3D(This,Index,Result)	\
    (This)->lpVtbl -> get_LineDimension3D(This,Index,Result)

#define ILineDimensions3D_Add(This,DimType,Result)	\
    (This)->lpVtbl -> Add(This,DimType,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimensions3D_get_LineDimension3D_Proxy( 
    ILineDimensions3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBaseLineDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILineDimensions3D_get_LineDimension3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILineDimensions3D_Add_Proxy( 
    ILineDimensions3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum DimType,
    /* [retval][out] */ IBaseLineDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILineDimensions3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILineDimensions3D_INTERFACE_DEFINED__ */


#ifndef __IBaseLineDimension3D_INTERFACE_DEFINED__
#define __IBaseLineDimension3D_INTERFACE_DEFINED__

/* interface IBaseLineDimension3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBaseLineDimension3D,0x3514887E,0x321B,0x4ce3,0xA9,0x66,0x3E,0xB1,0xA0,0x2C,0xEE,0xF2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3514887E-321B-4ce3-A966-3EB1A02CEEF2")
    IBaseLineDimension3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object1( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Object1( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object2( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Object2( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBaseLineDimension3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBaseLineDimension3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBaseLineDimension3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object1 )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object1 )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object2 )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object2 )( 
            IBaseLineDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        END_INTERFACE
    } IBaseLineDimension3DVtbl;

    interface IBaseLineDimension3D
    {
        CONST_VTBL struct IBaseLineDimension3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBaseLineDimension3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBaseLineDimension3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBaseLineDimension3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBaseLineDimension3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBaseLineDimension3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBaseLineDimension3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBaseLineDimension3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBaseLineDimension3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBaseLineDimension3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBaseLineDimension3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBaseLineDimension3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBaseLineDimension3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IBaseLineDimension3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IBaseLineDimension3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IBaseLineDimension3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IBaseLineDimension3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IBaseLineDimension3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IBaseLineDimension3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IBaseLineDimension3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IBaseLineDimension3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IBaseLineDimension3D_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IBaseLineDimension3D_put_Length(This,Value)	\
    (This)->lpVtbl -> put_Length(This,Value)

#define IBaseLineDimension3D_get_Object1(This,Object1)	\
    (This)->lpVtbl -> get_Object1(This,Object1)

#define IBaseLineDimension3D_put_Object1(This,NewVal)	\
    (This)->lpVtbl -> put_Object1(This,NewVal)

#define IBaseLineDimension3D_get_Object2(This,Object2)	\
    (This)->lpVtbl -> get_Object2(This,Object2)

#define IBaseLineDimension3D_put_Object2(This,NewVal)	\
    (This)->lpVtbl -> put_Object2(This,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLineDimension3D_get_Length_Proxy( 
    IBaseLineDimension3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBaseLineDimension3D_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLineDimension3D_put_Length_Proxy( 
    IBaseLineDimension3D __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBaseLineDimension3D_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLineDimension3D_get_Object1_Proxy( 
    IBaseLineDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IBaseLineDimension3D_get_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLineDimension3D_put_Object1_Proxy( 
    IBaseLineDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB IBaseLineDimension3D_put_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLineDimension3D_get_Object2_Proxy( 
    IBaseLineDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);


void __RPC_STUB IBaseLineDimension3D_get_Object2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLineDimension3D_put_Object2_Proxy( 
    IBaseLineDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB IBaseLineDimension3D_put_Object2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBaseLineDimension3D_INTERFACE_DEFINED__ */


#ifndef __ILineDimension3D_INTERFACE_DEFINED__
#define __ILineDimension3D_INTERFACE_DEFINED__

/* interface ILineDimension3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILineDimension3D,0xF38E986B,0x9CC0,0x4492,0xB8,0x50,0x18,0x0D,0x3A,0x6A,0xF7,0x13);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F38E986B-9CC0-4492-B850-180D3A6AF713")
    ILineDimension3D : public IBaseLineDimension3D
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Plane( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Plane) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Plane( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineDimension3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILineDimension3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILineDimension3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILineDimension3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ILineDimension3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object1 )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object1 )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object2 )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object2 )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Plane )( 
            ILineDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Plane);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Plane )( 
            ILineDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        END_INTERFACE
    } ILineDimension3DVtbl;

    interface ILineDimension3D
    {
        CONST_VTBL struct ILineDimension3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILineDimension3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILineDimension3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILineDimension3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILineDimension3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILineDimension3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILineDimension3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILineDimension3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILineDimension3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILineDimension3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILineDimension3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILineDimension3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILineDimension3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ILineDimension3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ILineDimension3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ILineDimension3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ILineDimension3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ILineDimension3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ILineDimension3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ILineDimension3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ILineDimension3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ILineDimension3D_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define ILineDimension3D_put_Length(This,Value)	\
    (This)->lpVtbl -> put_Length(This,Value)

#define ILineDimension3D_get_Object1(This,Object1)	\
    (This)->lpVtbl -> get_Object1(This,Object1)

#define ILineDimension3D_put_Object1(This,NewVal)	\
    (This)->lpVtbl -> put_Object1(This,NewVal)

#define ILineDimension3D_get_Object2(This,Object2)	\
    (This)->lpVtbl -> get_Object2(This,Object2)

#define ILineDimension3D_put_Object2(This,NewVal)	\
    (This)->lpVtbl -> put_Object2(This,NewVal)


#define ILineDimension3D_get_Plane(This,Plane)	\
    (This)->lpVtbl -> get_Plane(This,Plane)

#define ILineDimension3D_put_Plane(This,NewVal)	\
    (This)->lpVtbl -> put_Plane(This,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension3D_get_Plane_Proxy( 
    ILineDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Plane);


void __RPC_STUB ILineDimension3D_get_Plane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension3D_put_Plane_Proxy( 
    ILineDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB ILineDimension3D_put_Plane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILineDimension3D_INTERFACE_DEFINED__ */


#ifndef __IRadialDimension3D_INTERFACE_DEFINED__
#define __IRadialDimension3D_INTERFACE_DEFINED__

/* interface IRadialDimension3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRadialDimension3D,0x5711B871,0x1FAE,0x425c,0x89,0x8E,0x58,0x34,0x42,0xD8,0x51,0xCD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5711B871-1FAE-425c-898E-583442D851CD")
    IRadialDimension3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object1( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Object1( 
            /* [in] */ IModelObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlaneObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlaneObject( 
            /* [in] */ IModelObject __RPC_FAR *Object) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSurfacePoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSurfacePoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCenterPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCenterPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRadialDimension3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRadialDimension3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRadialDimension3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object1 )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object1 )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PlaneObject )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PlaneObject )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSurfacePoint )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSurfacePoint )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCenterPoint )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCenterPoint )( 
            IRadialDimension3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IRadialDimension3DVtbl;

    interface IRadialDimension3D
    {
        CONST_VTBL struct IRadialDimension3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRadialDimension3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRadialDimension3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRadialDimension3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRadialDimension3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRadialDimension3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRadialDimension3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRadialDimension3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRadialDimension3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRadialDimension3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRadialDimension3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRadialDimension3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRadialDimension3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IRadialDimension3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IRadialDimension3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IRadialDimension3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IRadialDimension3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IRadialDimension3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IRadialDimension3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IRadialDimension3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IRadialDimension3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IRadialDimension3D_get_Object1(This,Object1)	\
    (This)->lpVtbl -> get_Object1(This,Object1)

#define IRadialDimension3D_put_Object1(This,Object1)	\
    (This)->lpVtbl -> put_Object1(This,Object1)

#define IRadialDimension3D_get_PlaneObject(This,Object)	\
    (This)->lpVtbl -> get_PlaneObject(This,Object)

#define IRadialDimension3D_put_PlaneObject(This,Object)	\
    (This)->lpVtbl -> put_PlaneObject(This,Object)

#define IRadialDimension3D_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IRadialDimension3D_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IRadialDimension3D_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IRadialDimension3D_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#define IRadialDimension3D_GetSurfacePoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetSurfacePoint(This,X,Y,Z,Result)

#define IRadialDimension3D_SetSurfacePoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetSurfacePoint(This,X,Y,Z,Result)

#define IRadialDimension3D_GetCenterPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetCenterPoint(This,X,Y,Z,Result)

#define IRadialDimension3D_SetCenterPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetCenterPoint(This,X,Y,Z,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_get_Object1_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IRadialDimension3D_get_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_put_Object1_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object1);


void __RPC_STUB IRadialDimension3D_put_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_get_PlaneObject_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object);


void __RPC_STUB IRadialDimension3D_get_PlaneObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_put_PlaneObject_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object);


void __RPC_STUB IRadialDimension3D_put_PlaneObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_get_DimensionType_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension3D_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_put_DimensionType_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRadialDimension3D_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_get_Angle_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension3D_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_put_Angle_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRadialDimension3D_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_GetSurfacePoint_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRadialDimension3D_GetSurfacePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_SetSurfacePoint_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRadialDimension3D_SetSurfacePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_GetCenterPoint_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRadialDimension3D_GetCenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRadialDimension3D_SetCenterPoint_Proxy( 
    IRadialDimension3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRadialDimension3D_SetCenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRadialDimension3D_INTERFACE_DEFINED__ */


#ifndef __IDiametralDimension3D_INTERFACE_DEFINED__
#define __IDiametralDimension3D_INTERFACE_DEFINED__

/* interface IDiametralDimension3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDiametralDimension3D,0x261AE065,0x69B8,0x4b42,0xB1,0x03,0xC8,0x74,0x67,0x20,0xC5,0xBF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("261AE065-69B8-4b42-B103-C8746720C5BF")
    IDiametralDimension3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object1( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Object1( 
            /* [in] */ IModelObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PlaneObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PlaneObject( 
            /* [in] */ IModelObject __RPC_FAR *Object2) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSurfacePoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSurfacePoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCenterPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCenterPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDiametralDimension3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDiametralDimension3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDiametralDimension3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object1 )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object1 )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PlaneObject )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PlaneObject )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object2);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSurfacePoint )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetSurfacePoint )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCenterPoint )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCenterPoint )( 
            IDiametralDimension3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IDiametralDimension3DVtbl;

    interface IDiametralDimension3D
    {
        CONST_VTBL struct IDiametralDimension3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDiametralDimension3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDiametralDimension3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDiametralDimension3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDiametralDimension3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDiametralDimension3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDiametralDimension3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDiametralDimension3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDiametralDimension3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDiametralDimension3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDiametralDimension3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDiametralDimension3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDiametralDimension3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IDiametralDimension3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IDiametralDimension3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IDiametralDimension3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IDiametralDimension3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IDiametralDimension3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IDiametralDimension3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IDiametralDimension3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IDiametralDimension3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IDiametralDimension3D_get_Object1(This,Object1)	\
    (This)->lpVtbl -> get_Object1(This,Object1)

#define IDiametralDimension3D_put_Object1(This,Object1)	\
    (This)->lpVtbl -> put_Object1(This,Object1)

#define IDiametralDimension3D_get_PlaneObject(This,Object2)	\
    (This)->lpVtbl -> get_PlaneObject(This,Object2)

#define IDiametralDimension3D_put_PlaneObject(This,Object2)	\
    (This)->lpVtbl -> put_PlaneObject(This,Object2)

#define IDiametralDimension3D_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IDiametralDimension3D_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IDiametralDimension3D_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IDiametralDimension3D_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#define IDiametralDimension3D_GetSurfacePoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetSurfacePoint(This,X,Y,Z,Result)

#define IDiametralDimension3D_SetSurfacePoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetSurfacePoint(This,X,Y,Z,Result)

#define IDiametralDimension3D_GetCenterPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetCenterPoint(This,X,Y,Z,Result)

#define IDiametralDimension3D_SetCenterPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetCenterPoint(This,X,Y,Z,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_get_Object1_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IDiametralDimension3D_get_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_put_Object1_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object1);


void __RPC_STUB IDiametralDimension3D_put_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_get_PlaneObject_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);


void __RPC_STUB IDiametralDimension3D_get_PlaneObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_put_PlaneObject_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object2);


void __RPC_STUB IDiametralDimension3D_put_PlaneObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_get_DimensionType_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension3D_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_put_DimensionType_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDiametralDimension3D_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_get_Angle_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension3D_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_put_Angle_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDiametralDimension3D_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_GetSurfacePoint_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDiametralDimension3D_GetSurfacePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_SetSurfacePoint_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDiametralDimension3D_SetSurfacePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_GetCenterPoint_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDiametralDimension3D_GetCenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDiametralDimension3D_SetCenterPoint_Proxy( 
    IDiametralDimension3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDiametralDimension3D_SetCenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDiametralDimension3D_INTERFACE_DEFINED__ */


#ifndef __IRadialDimensions3D_INTERFACE_DEFINED__
#define __IRadialDimensions3D_INTERFACE_DEFINED__

/* interface IRadialDimensions3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRadialDimensions3D,0x153924CD,0xE046,0x4334,0x87,0x98,0x46,0xA6,0xD6,0x66,0x3D,0xE4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("153924CD-E046-4334-8798-46A6D6663DE4")
    IRadialDimensions3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadialDimension3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRadialDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRadialDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRadialDimensions3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRadialDimensions3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRadialDimensions3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RadialDimension3D )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRadialDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRadialDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IRadialDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IRadialDimensions3DVtbl;

    interface IRadialDimensions3D
    {
        CONST_VTBL struct IRadialDimensions3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRadialDimensions3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRadialDimensions3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRadialDimensions3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRadialDimensions3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRadialDimensions3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRadialDimensions3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRadialDimensions3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRadialDimensions3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRadialDimensions3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRadialDimensions3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRadialDimensions3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRadialDimensions3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRadialDimensions3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRadialDimensions3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRadialDimensions3D_get_RadialDimension3D(This,Index,Result)	\
    (This)->lpVtbl -> get_RadialDimension3D(This,Index,Result)

#define IRadialDimensions3D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimensions3D_get_RadialDimension3D_Proxy( 
    IRadialDimensions3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRadialDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRadialDimensions3D_get_RadialDimension3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRadialDimensions3D_Add_Proxy( 
    IRadialDimensions3D __RPC_FAR * This,
    /* [retval][out] */ IRadialDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRadialDimensions3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRadialDimensions3D_INTERFACE_DEFINED__ */


#ifndef __IDiametralDimensions3D_INTERFACE_DEFINED__
#define __IDiametralDimensions3D_INTERFACE_DEFINED__

/* interface IDiametralDimensions3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDiametralDimensions3D,0x79B5AC3B,0x9B2F,0x4c75,0x84,0x82,0x3C,0x0D,0x6B,0x07,0xD9,0x11);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("79B5AC3B-9B2F-4c75-8482-3C0D6B07D911")
    IDiametralDimensions3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DiametralDimension3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDiametralDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IDiametralDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDiametralDimensions3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDiametralDimensions3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDiametralDimensions3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DiametralDimension3D )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDiametralDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDiametralDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IDiametralDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IDiametralDimensions3DVtbl;

    interface IDiametralDimensions3D
    {
        CONST_VTBL struct IDiametralDimensions3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDiametralDimensions3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDiametralDimensions3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDiametralDimensions3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDiametralDimensions3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDiametralDimensions3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDiametralDimensions3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDiametralDimensions3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDiametralDimensions3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDiametralDimensions3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDiametralDimensions3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDiametralDimensions3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDiametralDimensions3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDiametralDimensions3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDiametralDimensions3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IDiametralDimensions3D_get_DiametralDimension3D(This,Index,Result)	\
    (This)->lpVtbl -> get_DiametralDimension3D(This,Index,Result)

#define IDiametralDimensions3D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimensions3D_get_DiametralDimension3D_Proxy( 
    IDiametralDimensions3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDiametralDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDiametralDimensions3D_get_DiametralDimension3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDiametralDimensions3D_Add_Proxy( 
    IDiametralDimensions3D __RPC_FAR * This,
    /* [retval][out] */ IDiametralDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDiametralDimensions3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDiametralDimensions3D_INTERFACE_DEFINED__ */


#ifndef __IAngleDimension3D_INTERFACE_DEFINED__
#define __IAngleDimension3D_INTERFACE_DEFINED__

/* interface IAngleDimension3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAngleDimension3D,0xC22870B5,0xF002,0x4c76,0x9E,0x67,0x46,0x85,0x4E,0x93,0x88,0x24);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C22870B5-F002-4c76-9E67-46854E938824")
    IAngleDimension3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object1( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Object1( 
            /* [in] */ IModelObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Object2( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Object2( 
            /* [in] */ IModelObject __RPC_FAR *Object2) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Inverse( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCenterPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCenterPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAngleDimension3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAngleDimension3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAngleDimension3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object1 )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object1 )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Object2 )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Object2 )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object2);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Inverse )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCenterPoint )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCenterPoint )( 
            IAngleDimension3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IAngleDimension3DVtbl;

    interface IAngleDimension3D
    {
        CONST_VTBL struct IAngleDimension3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAngleDimension3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAngleDimension3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAngleDimension3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAngleDimension3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAngleDimension3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAngleDimension3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAngleDimension3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAngleDimension3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAngleDimension3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAngleDimension3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAngleDimension3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAngleDimension3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IAngleDimension3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IAngleDimension3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IAngleDimension3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IAngleDimension3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IAngleDimension3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IAngleDimension3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IAngleDimension3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IAngleDimension3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IAngleDimension3D_get_Object1(This,Object1)	\
    (This)->lpVtbl -> get_Object1(This,Object1)

#define IAngleDimension3D_put_Object1(This,Object1)	\
    (This)->lpVtbl -> put_Object1(This,Object1)

#define IAngleDimension3D_get_Object2(This,Object2)	\
    (This)->lpVtbl -> get_Object2(This,Object2)

#define IAngleDimension3D_put_Object2(This,Object2)	\
    (This)->lpVtbl -> put_Object2(This,Object2)

#define IAngleDimension3D_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IAngleDimension3D_put_Length(This,Value)	\
    (This)->lpVtbl -> put_Length(This,Value)

#define IAngleDimension3D_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IAngleDimension3D_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IAngleDimension3D_Inverse(This,Result)	\
    (This)->lpVtbl -> Inverse(This,Result)

#define IAngleDimension3D_GetCenterPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetCenterPoint(This,X,Y,Z,Result)

#define IAngleDimension3D_SetCenterPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetCenterPoint(This,X,Y,Z,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_get_Object1_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IAngleDimension3D_get_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_put_Object1_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object1);


void __RPC_STUB IAngleDimension3D_put_Object1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_get_Object2_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object2);


void __RPC_STUB IAngleDimension3D_get_Object2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_put_Object2_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object2);


void __RPC_STUB IAngleDimension3D_put_Object2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_get_Length_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension3D_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_put_Length_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IAngleDimension3D_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_get_DimensionType_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension3D_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_put_DimensionType_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value);


void __RPC_STUB IAngleDimension3D_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_Inverse_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAngleDimension3D_Inverse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_GetCenterPoint_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAngleDimension3D_GetCenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAngleDimension3D_SetCenterPoint_Proxy( 
    IAngleDimension3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IAngleDimension3D_SetCenterPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAngleDimension3D_INTERFACE_DEFINED__ */


#ifndef __IAngleDimensions3D_INTERFACE_DEFINED__
#define __IAngleDimensions3D_INTERFACE_DEFINED__

/* interface IAngleDimensions3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAngleDimensions3D,0xE0E8DB05,0xF71B,0x457e,0xBF,0xEB,0x7E,0xC2,0xE8,0x03,0xE7,0x7A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E0E8DB05-F71B-457e-BFEB-7EC2E803E77A")
    IAngleDimensions3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleDimension3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAngleDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IAngleDimension3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAngleDimensions3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAngleDimensions3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAngleDimensions3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AngleDimension3D )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAngleDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IAngleDimensions3D __RPC_FAR * This,
            /* [retval][out] */ IAngleDimension3D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAngleDimensions3DVtbl;

    interface IAngleDimensions3D
    {
        CONST_VTBL struct IAngleDimensions3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAngleDimensions3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAngleDimensions3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAngleDimensions3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAngleDimensions3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAngleDimensions3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAngleDimensions3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAngleDimensions3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAngleDimensions3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAngleDimensions3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAngleDimensions3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAngleDimensions3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAngleDimensions3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAngleDimensions3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAngleDimensions3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IAngleDimensions3D_get_AngleDimension3D(This,Index,Result)	\
    (This)->lpVtbl -> get_AngleDimension3D(This,Index,Result)

#define IAngleDimensions3D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimensions3D_get_AngleDimension3D_Proxy( 
    IAngleDimensions3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAngleDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAngleDimensions3D_get_AngleDimension3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAngleDimensions3D_Add_Proxy( 
    IAngleDimensions3D __RPC_FAR * This,
    /* [retval][out] */ IAngleDimension3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAngleDimensions3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAngleDimensions3D_INTERFACE_DEFINED__ */


#ifndef __ICurveVertexParam_INTERFACE_DEFINED__
#define __ICurveVertexParam_INTERFACE_DEFINED__

/* interface ICurveVertexParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICurveVertexParam,0x2AD2E4B4,0xB870,0x437a,0x8D,0x57,0x58,0x07,0x72,0x9F,0xCB,0x05);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2AD2E4B4-B870-437a-8D57-5807729FCB05")
    ICurveVertexParam : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BuildingType( 
            /* [in] */ /* external definition not present */ ksLineBuildingType NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BuildingType( 
            /* [retval][out] */ /* external definition not present */ ksLineBuildingType __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BuildingObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BuildingObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AssociationVertex( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AssociationVertex( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Vertex( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Index( 
            /* [retval][out] */ int __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PointParameters( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PointType( 
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PointType( 
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetParamVertex( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [out] */ double __RPC_FAR *Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetParamVertex( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double z,
            /* [in] */ double value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetParamByVertex( 
            /* [in] */ IModelObject __RPC_FAR *Obj,
            /* [in] */ double Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetParamByDistance( 
            /* [out] */ double __RPC_FAR *Distance,
            /* [out] */ double __RPC_FAR *Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetParamByDistance( 
            /* [in] */ double Distance,
            /* [in] */ double Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICurveVertexParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICurveVertexParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICurveVertexParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BuildingType )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksLineBuildingType NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BuildingType )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLineBuildingType __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BuildingObject )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BuildingObject )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AssociationVertex )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationVertex )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Vertex )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Index )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ int __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PointParameters )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PointType )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PointType )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetParamVertex )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [out] */ double __RPC_FAR *Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetParamVertex )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double z,
            /* [in] */ double value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetParamByVertex )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Obj,
            /* [in] */ double Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetParamByDistance )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *Distance,
            /* [out] */ double __RPC_FAR *Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetParamByDistance )( 
            ICurveVertexParam __RPC_FAR * This,
            /* [in] */ double Distance,
            /* [in] */ double Value,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICurveVertexParamVtbl;

    interface ICurveVertexParam
    {
        CONST_VTBL struct ICurveVertexParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICurveVertexParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICurveVertexParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICurveVertexParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICurveVertexParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICurveVertexParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICurveVertexParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICurveVertexParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICurveVertexParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICurveVertexParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICurveVertexParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICurveVertexParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICurveVertexParam_put_BuildingType(This,NewVal)	\
    (This)->lpVtbl -> put_BuildingType(This,NewVal)

#define ICurveVertexParam_get_BuildingType(This,Result)	\
    (This)->lpVtbl -> get_BuildingType(This,Result)

#define ICurveVertexParam_put_BuildingObject(This,NewVal)	\
    (This)->lpVtbl -> put_BuildingObject(This,NewVal)

#define ICurveVertexParam_get_BuildingObject(This,Result)	\
    (This)->lpVtbl -> get_BuildingObject(This,Result)

#define ICurveVertexParam_put_AssociationVertex(This,NewVal)	\
    (This)->lpVtbl -> put_AssociationVertex(This,NewVal)

#define ICurveVertexParam_get_AssociationVertex(This,Result)	\
    (This)->lpVtbl -> get_AssociationVertex(This,Result)

#define ICurveVertexParam_get_Vertex(This,Result)	\
    (This)->lpVtbl -> get_Vertex(This,Result)

#define ICurveVertexParam_get_Index(This,Result)	\
    (This)->lpVtbl -> get_Index(This,Result)

#define ICurveVertexParam_get_PointParameters(This,Result)	\
    (This)->lpVtbl -> get_PointParameters(This,Result)

#define ICurveVertexParam_put_PointType(This,NewVal)	\
    (This)->lpVtbl -> put_PointType(This,NewVal)

#define ICurveVertexParam_get_PointType(This,Result)	\
    (This)->lpVtbl -> get_PointType(This,Result)

#define ICurveVertexParam_GetParamVertex(This,X,Y,Z,Value,PVal)	\
    (This)->lpVtbl -> GetParamVertex(This,X,Y,Z,Value,PVal)

#define ICurveVertexParam_SetParamVertex(This,X,Y,z,value,PVal)	\
    (This)->lpVtbl -> SetParamVertex(This,X,Y,z,value,PVal)

#define ICurveVertexParam_SetParamByVertex(This,Obj,Value,PVal)	\
    (This)->lpVtbl -> SetParamByVertex(This,Obj,Value,PVal)

#define ICurveVertexParam_GetParamByDistance(This,Distance,Value,PVal)	\
    (This)->lpVtbl -> GetParamByDistance(This,Distance,Value,PVal)

#define ICurveVertexParam_SetParamByDistance(This,Distance,Value,PVal)	\
    (This)->lpVtbl -> SetParamByDistance(This,Distance,Value,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_put_BuildingType_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksLineBuildingType NewVal);


void __RPC_STUB ICurveVertexParam_put_BuildingType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_BuildingType_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLineBuildingType __RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_BuildingType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_put_BuildingObject_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB ICurveVertexParam_put_BuildingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_BuildingObject_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_BuildingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_put_AssociationVertex_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB ICurveVertexParam_put_AssociationVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_AssociationVertex_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_AssociationVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_Vertex_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_Vertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_Index_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ int __RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_Index_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_PointParameters_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_PointParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_put_PointType_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);


void __RPC_STUB ICurveVertexParam_put_PointType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_get_PointType_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *Result);


void __RPC_STUB ICurveVertexParam_get_PointType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_GetParamVertex_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [out] */ double __RPC_FAR *Value,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveVertexParam_GetParamVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_SetParamVertex_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double z,
    /* [in] */ double value,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveVertexParam_SetParamVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_SetParamByVertex_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Obj,
    /* [in] */ double Value,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveVertexParam_SetParamByVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_GetParamByDistance_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *Distance,
    /* [out] */ double __RPC_FAR *Value,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveVertexParam_GetParamByDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurveVertexParam_SetParamByDistance_Proxy( 
    ICurveVertexParam __RPC_FAR * This,
    /* [in] */ double Distance,
    /* [in] */ double Value,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveVertexParam_SetParamByDistance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICurveVertexParam_INTERFACE_DEFINED__ */


#ifndef __ISplines3D_INTERFACE_DEFINED__
#define __ISplines3D_INTERFACE_DEFINED__

/* interface ISplines3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISplines3D,0xC4BC0839,0x932F,0x4dbc,0x9A,0x84,0x5D,0x1F,0xE8,0x92,0x73,0x51);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C4BC0839-932F-4dbc-9A84-5D1FE8927351")
    ISplines3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Spline3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpline3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISpline3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Convert( 
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISplines3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISplines3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISplines3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISplines3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Spline3D )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISpline3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISplines3D __RPC_FAR * This,
            /* [retval][out] */ ISpline3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Convert )( 
            ISplines3D __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } ISplines3DVtbl;

    interface ISplines3D
    {
        CONST_VTBL struct ISplines3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISplines3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISplines3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISplines3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISplines3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISplines3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISplines3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISplines3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISplines3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISplines3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISplines3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISplines3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISplines3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISplines3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISplines3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISplines3D_get_Spline3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Spline3D(This,Index,Result)

#define ISplines3D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#define ISplines3D_Convert(This,Objects,Result)	\
    (This)->lpVtbl -> Convert(This,Objects,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISplines3D_get_Spline3D_Proxy( 
    ISplines3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISpline3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISplines3D_get_Spline3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISplines3D_Add_Proxy( 
    ISplines3D __RPC_FAR * This,
    /* [retval][out] */ ISpline3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISplines3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISplines3D_Convert_Proxy( 
    ISplines3D __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ISplines3D_Convert_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISplines3D_INTERFACE_DEFINED__ */


#ifndef __ISpline3D_INTERFACE_DEFINED__
#define __ISpline3D_INTERFACE_DEFINED__

/* interface ISpline3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpline3D,0x4D0940A0,0x6A4A,0x4ce8,0xA0,0x8A,0xEA,0x0A,0x4A,0xE9,0x19,0x42);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4D0940A0-6A4A-4ce8-A08A-EA0A4AE91942")
    ISpline3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SplineOnPoles( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SplineOnPoles( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SplineOrder( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SplineOrder( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexParams( 
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddVertex( 
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteVertex( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Flush( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ReadFromFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteToFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexParamsArray( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVertexCoordinatesArray( 
            /* [out] */ VARIANT __RPC_FAR *Coordinates,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Knots( 
            /* [in] */ VARIANT Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Knots( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpline3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpline3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpline3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpline3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISpline3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SplineOnPoles )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SplineOnPoles )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SplineOrder )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SplineOrder )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexCount )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexParams )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddVertex )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteVertex )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Flush )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReadFromFile )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *WriteToFile )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexParamsArray )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVertexCoordinatesArray )( 
            ISpline3D __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *Coordinates,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Knots )( 
            ISpline3D __RPC_FAR * This,
            /* [in] */ VARIANT Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Knots )( 
            ISpline3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        END_INTERFACE
    } ISpline3DVtbl;

    interface ISpline3D
    {
        CONST_VTBL struct ISpline3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpline3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpline3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpline3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpline3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpline3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpline3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpline3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpline3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpline3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpline3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpline3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpline3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISpline3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISpline3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISpline3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISpline3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISpline3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISpline3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISpline3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISpline3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISpline3D_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define ISpline3D_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define ISpline3D_put_SplineOnPoles(This,Val)	\
    (This)->lpVtbl -> put_SplineOnPoles(This,Val)

#define ISpline3D_get_SplineOnPoles(This,Result)	\
    (This)->lpVtbl -> get_SplineOnPoles(This,Result)

#define ISpline3D_put_SplineOrder(This,Val)	\
    (This)->lpVtbl -> put_SplineOrder(This,Val)

#define ISpline3D_get_SplineOrder(This,Result)	\
    (This)->lpVtbl -> get_SplineOrder(This,Result)

#define ISpline3D_get_VertexCount(This,Result)	\
    (This)->lpVtbl -> get_VertexCount(This,Result)

#define ISpline3D_get_VertexParams(This,Index,Result)	\
    (This)->lpVtbl -> get_VertexParams(This,Index,Result)

#define ISpline3D_AddVertex(This,Index,Result)	\
    (This)->lpVtbl -> AddVertex(This,Index,Result)

#define ISpline3D_DeleteVertex(This,Index,Result)	\
    (This)->lpVtbl -> DeleteVertex(This,Index,Result)

#define ISpline3D_Flush(This,Result)	\
    (This)->lpVtbl -> Flush(This,Result)

#define ISpline3D_ReadFromFile(This,FileName,Result)	\
    (This)->lpVtbl -> ReadFromFile(This,FileName,Result)

#define ISpline3D_WriteToFile(This,FileName,Result)	\
    (This)->lpVtbl -> WriteToFile(This,FileName,Result)

#define ISpline3D_get_VertexParamsArray(This,Result)	\
    (This)->lpVtbl -> get_VertexParamsArray(This,Result)

#define ISpline3D_GetVertexCoordinatesArray(This,Coordinates,Weights,Result)	\
    (This)->lpVtbl -> GetVertexCoordinatesArray(This,Coordinates,Weights,Result)

#define ISpline3D_put_Knots(This,Val)	\
    (This)->lpVtbl -> put_Knots(This,Val)

#define ISpline3D_get_Knots(This,PVal)	\
    (This)->lpVtbl -> get_Knots(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpline3D_put_Closed_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpline3D_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_Closed_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpline3D_put_SplineOnPoles_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpline3D_put_SplineOnPoles_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_SplineOnPoles_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_get_SplineOnPoles_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpline3D_put_SplineOrder_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ISpline3D_put_SplineOrder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_SplineOrder_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ISpline3D_get_SplineOrder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_VertexCount_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ISpline3D_get_VertexCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_VertexParams_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpline3D_get_VertexParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpline3D_AddVertex_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISpline3D_AddVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpline3D_DeleteVertex_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_DeleteVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpline3D_Flush_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_Flush_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpline3D_ReadFromFile_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_ReadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpline3D_WriteToFile_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_WriteToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_VertexParamsArray_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ISpline3D_get_VertexParamsArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpline3D_GetVertexCoordinatesArray_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *Coordinates,
    /* [out] */ VARIANT __RPC_FAR *Weights,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpline3D_GetVertexCoordinatesArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpline3D_put_Knots_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [in] */ VARIANT Val);


void __RPC_STUB ISpline3D_put_Knots_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpline3D_get_Knots_Proxy( 
    ISpline3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISpline3D_get_Knots_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpline3D_INTERFACE_DEFINED__ */


#ifndef __ILocalCoordinateSystem_INTERFACE_DEFINED__
#define __ILocalCoordinateSystem_INTERFACE_DEFINED__

/* interface ILocalCoordinateSystem */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILocalCoordinateSystem,0xBA6395F5,0x3506,0x4483,0x88,0x64,0x4E,0xEC,0x22,0x0A,0xF3,0x16);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BA6395F5-3506-4483-8864-4EEC220AF316")
    ILocalCoordinateSystem : public IPoint3D
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDisplacementByAxis( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [in] */ double NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OrientationType( 
            /* [in] */ /* external definition not present */ ksOrientationTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OrientationType( 
            /* [retval][out] */ /* external definition not present */ ksOrientationTypeEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ReadFromFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteToFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetStartingOrientation( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVector( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LocalCSParameters( 
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Current( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefaultObject( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum val,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE InitByMatrix3D( 
            /* [in] */ VARIANT mtr,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalCoordinateSystemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILocalCoordinateSystem __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILocalCoordinateSystem __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Z )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Z )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAssociationObject )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationObject )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Symbol )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Symbol )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParameterType )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParameterType )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parameters )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDisplacementByAxis )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [in] */ double NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OrientationType )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksOrientationTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OrientationType )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksOrientationTypeEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReadFromFile )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *WriteToFile )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetStartingOrientation )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVector )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LocalCSParameters )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Current )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefaultObject )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum val,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InitByMatrix3D )( 
            ILocalCoordinateSystem __RPC_FAR * This,
            /* [in] */ VARIANT mtr,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ILocalCoordinateSystemVtbl;

    interface ILocalCoordinateSystem
    {
        CONST_VTBL struct ILocalCoordinateSystemVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalCoordinateSystem_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalCoordinateSystem_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalCoordinateSystem_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalCoordinateSystem_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalCoordinateSystem_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalCoordinateSystem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalCoordinateSystem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalCoordinateSystem_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILocalCoordinateSystem_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILocalCoordinateSystem_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILocalCoordinateSystem_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILocalCoordinateSystem_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ILocalCoordinateSystem_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ILocalCoordinateSystem_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ILocalCoordinateSystem_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ILocalCoordinateSystem_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ILocalCoordinateSystem_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ILocalCoordinateSystem_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ILocalCoordinateSystem_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ILocalCoordinateSystem_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ILocalCoordinateSystem_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define ILocalCoordinateSystem_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define ILocalCoordinateSystem_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define ILocalCoordinateSystem_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define ILocalCoordinateSystem_put_Z(This,NewVal)	\
    (This)->lpVtbl -> put_Z(This,NewVal)

#define ILocalCoordinateSystem_get_Z(This,PVal)	\
    (This)->lpVtbl -> get_Z(This,PVal)

#define ILocalCoordinateSystem_SetAssociationObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetAssociationObject(This,NewVal,Result)

#define ILocalCoordinateSystem_get_AssociationObject(This,PVal)	\
    (This)->lpVtbl -> get_AssociationObject(This,PVal)

#define ILocalCoordinateSystem_put_Symbol(This,NewVal)	\
    (This)->lpVtbl -> put_Symbol(This,NewVal)

#define ILocalCoordinateSystem_get_Symbol(This,PVal)	\
    (This)->lpVtbl -> get_Symbol(This,PVal)

#define ILocalCoordinateSystem_put_ParameterType(This,NewVal)	\
    (This)->lpVtbl -> put_ParameterType(This,NewVal)

#define ILocalCoordinateSystem_get_ParameterType(This,PVal)	\
    (This)->lpVtbl -> get_ParameterType(This,PVal)

#define ILocalCoordinateSystem_get_Parameters(This,Result)	\
    (This)->lpVtbl -> get_Parameters(This,Result)


#define ILocalCoordinateSystem_SetDisplacementByAxis(This,Axis,NewVal,Result)	\
    (This)->lpVtbl -> SetDisplacementByAxis(This,Axis,NewVal,Result)

#define ILocalCoordinateSystem_put_OrientationType(This,NewVal)	\
    (This)->lpVtbl -> put_OrientationType(This,NewVal)

#define ILocalCoordinateSystem_get_OrientationType(This,Result)	\
    (This)->lpVtbl -> get_OrientationType(This,Result)

#define ILocalCoordinateSystem_ReadFromFile(This,FileName,Result)	\
    (This)->lpVtbl -> ReadFromFile(This,FileName,Result)

#define ILocalCoordinateSystem_WriteToFile(This,FileName,Result)	\
    (This)->lpVtbl -> WriteToFile(This,FileName,Result)

#define ILocalCoordinateSystem_SetStartingOrientation(This,Result)	\
    (This)->lpVtbl -> SetStartingOrientation(This,Result)

#define ILocalCoordinateSystem_GetVector(This,Axis,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetVector(This,Axis,X,Y,Z,Result)

#define ILocalCoordinateSystem_get_LocalCSParameters(This,Result)	\
    (This)->lpVtbl -> get_LocalCSParameters(This,Result)

#define ILocalCoordinateSystem_put_Current(This,NewVal)	\
    (This)->lpVtbl -> put_Current(This,NewVal)

#define ILocalCoordinateSystem_get_Current(This,Result)	\
    (This)->lpVtbl -> get_Current(This,Result)

#define ILocalCoordinateSystem_get_DefaultObject(This,val,Result)	\
    (This)->lpVtbl -> get_DefaultObject(This,val,Result)

#define ILocalCoordinateSystem_InitByMatrix3D(This,mtr,Result)	\
    (This)->lpVtbl -> InitByMatrix3D(This,mtr,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_SetDisplacementByAxis_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
    /* [in] */ double NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_SetDisplacementByAxis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_put_OrientationType_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksOrientationTypeEnum NewVal);


void __RPC_STUB ILocalCoordinateSystem_put_OrientationType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_get_OrientationType_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksOrientationTypeEnum __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_get_OrientationType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_ReadFromFile_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_ReadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_WriteToFile_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_WriteToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_SetStartingOrientation_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_SetStartingOrientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_GetVector_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_GetVector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_get_LocalCSParameters_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_get_LocalCSParameters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_put_Current_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILocalCoordinateSystem_put_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_get_Current_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_get_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_get_DefaultObject_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum val,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_get_DefaultObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystem_InitByMatrix3D_Proxy( 
    ILocalCoordinateSystem __RPC_FAR * This,
    /* [in] */ VARIANT mtr,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystem_InitByMatrix3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalCoordinateSystem_INTERFACE_DEFINED__ */


#ifndef __ILocalCoordinateSystems_INTERFACE_DEFINED__
#define __ILocalCoordinateSystems_INTERFACE_DEFINED__

/* interface ILocalCoordinateSystems */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILocalCoordinateSystems,0xCC04CBF6,0xF0D4,0x456e,0x90,0x3A,0xC0,0xB0,0xD3,0x55,0x13,0x68);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CC04CBF6-F0D4-456e-903A-C0B0D3551368")
    ILocalCoordinateSystems : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LocalCoordinateSystem( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCurrent( 
            /* [in] */ ILocalCoordinateSystem __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalCoordinateSystemsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILocalCoordinateSystems __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILocalCoordinateSystems __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LocalCoordinateSystem )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCurrent )( 
            ILocalCoordinateSystems __RPC_FAR * This,
            /* [in] */ ILocalCoordinateSystem __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ILocalCoordinateSystemsVtbl;

    interface ILocalCoordinateSystems
    {
        CONST_VTBL struct ILocalCoordinateSystemsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalCoordinateSystems_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalCoordinateSystems_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalCoordinateSystems_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalCoordinateSystems_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalCoordinateSystems_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalCoordinateSystems_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalCoordinateSystems_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalCoordinateSystems_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILocalCoordinateSystems_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILocalCoordinateSystems_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILocalCoordinateSystems_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILocalCoordinateSystems_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILocalCoordinateSystems_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILocalCoordinateSystems_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILocalCoordinateSystems_get_LocalCoordinateSystem(This,Index,Result)	\
    (This)->lpVtbl -> get_LocalCoordinateSystem(This,Index,Result)

#define ILocalCoordinateSystems_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#define ILocalCoordinateSystems_get_Current(This,Result)	\
    (This)->lpVtbl -> get_Current(This,Result)

#define ILocalCoordinateSystems_SetCurrent(This,Object,Result)	\
    (This)->lpVtbl -> SetCurrent(This,Object,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystems_get_LocalCoordinateSystem_Proxy( 
    ILocalCoordinateSystems __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystems_get_LocalCoordinateSystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystems_Add_Proxy( 
    ILocalCoordinateSystems __RPC_FAR * This,
    /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystems_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystems_get_Current_Proxy( 
    ILocalCoordinateSystems __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystems_get_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCoordinateSystems_SetCurrent_Proxy( 
    ILocalCoordinateSystems __RPC_FAR * This,
    /* [in] */ ILocalCoordinateSystem __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCoordinateSystems_SetCurrent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalCoordinateSystems_INTERFACE_DEFINED__ */


#ifndef __IAuxiliaryGeomContainer_INTERFACE_DEFINED__
#define __IAuxiliaryGeomContainer_INTERFACE_DEFINED__

/* interface IAuxiliaryGeomContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAuxiliaryGeomContainer,0x950FEBE2,0xF916,0x4e77,0xA3,0x7D,0xB0,0x61,0xE5,0xC2,0x2F,0xA8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("950FEBE2-F916-4e77-A37D-B061E5C22FA8")
    IAuxiliaryGeomContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LocalCoordinateSystems( 
            /* [retval][out] */ ILocalCoordinateSystems __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Splines3D( 
            /* [retval][out] */ ISplines3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PolyLines( 
            /* [retval][out] */ IPolyLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ControlPoints( 
            /* [retval][out] */ IControlPoints __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConjunctivePoints( 
            /* [retval][out] */ IConjunctivePoints __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SplitLines( 
            /* [retval][out] */ ISplitLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfacesIntersectionCurves( 
            /* [retval][out] */ ISurfacesIntersectionCurves __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Equidistants3D( 
            /* [retval][out] */ IEquidistants3D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAuxiliaryGeomContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAuxiliaryGeomContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAuxiliaryGeomContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LocalCoordinateSystems )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ ILocalCoordinateSystems __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Splines3D )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ ISplines3D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PolyLines )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ IPolyLines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlPoints )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ IControlPoints __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ConjunctivePoints )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ IConjunctivePoints __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SplitLines )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ ISplitLines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfacesIntersectionCurves )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ ISurfacesIntersectionCurves __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Equidistants3D )( 
            IAuxiliaryGeomContainer __RPC_FAR * This,
            /* [retval][out] */ IEquidistants3D __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IAuxiliaryGeomContainerVtbl;

    interface IAuxiliaryGeomContainer
    {
        CONST_VTBL struct IAuxiliaryGeomContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAuxiliaryGeomContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAuxiliaryGeomContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAuxiliaryGeomContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAuxiliaryGeomContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAuxiliaryGeomContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAuxiliaryGeomContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAuxiliaryGeomContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAuxiliaryGeomContainer_get_LocalCoordinateSystems(This,PVal)	\
    (This)->lpVtbl -> get_LocalCoordinateSystems(This,PVal)

#define IAuxiliaryGeomContainer_get_Splines3D(This,PVal)	\
    (This)->lpVtbl -> get_Splines3D(This,PVal)

#define IAuxiliaryGeomContainer_get_PolyLines(This,PVal)	\
    (This)->lpVtbl -> get_PolyLines(This,PVal)

#define IAuxiliaryGeomContainer_get_ControlPoints(This,PVal)	\
    (This)->lpVtbl -> get_ControlPoints(This,PVal)

#define IAuxiliaryGeomContainer_get_ConjunctivePoints(This,PVal)	\
    (This)->lpVtbl -> get_ConjunctivePoints(This,PVal)

#define IAuxiliaryGeomContainer_get_SplitLines(This,PVal)	\
    (This)->lpVtbl -> get_SplitLines(This,PVal)

#define IAuxiliaryGeomContainer_get_SurfacesIntersectionCurves(This,PVal)	\
    (This)->lpVtbl -> get_SurfacesIntersectionCurves(This,PVal)

#define IAuxiliaryGeomContainer_get_Equidistants3D(This,PVal)	\
    (This)->lpVtbl -> get_Equidistants3D(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_LocalCoordinateSystems_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ ILocalCoordinateSystems __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_LocalCoordinateSystems_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_Splines3D_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ ISplines3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_Splines3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_PolyLines_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ IPolyLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_PolyLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_ControlPoints_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ IControlPoints __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_ControlPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_ConjunctivePoints_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ IConjunctivePoints __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_ConjunctivePoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_SplitLines_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ ISplitLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_SplitLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_SurfacesIntersectionCurves_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ ISurfacesIntersectionCurves __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_SurfacesIntersectionCurves_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAuxiliaryGeomContainer_get_Equidistants3D_Proxy( 
    IAuxiliaryGeomContainer __RPC_FAR * This,
    /* [retval][out] */ IEquidistants3D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IAuxiliaryGeomContainer_get_Equidistants3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAuxiliaryGeomContainer_INTERFACE_DEFINED__ */


#ifndef __ILocalCSAxesDirectionParam_INTERFACE_DEFINED__
#define __ILocalCSAxesDirectionParam_INTERFACE_DEFINED__

/* interface ILocalCSAxesDirectionParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILocalCSAxesDirectionParam,0x919DF6DB,0x0BA9,0x4edd,0xB6,0x81,0x33,0xE0,0xB5,0x19,0x83,0x4B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("919DF6DB-0BA9-4edd-B681-33E0B519834B")
    ILocalCSAxesDirectionParam : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDirectingObject( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirectingObject( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE RotateAxis( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AngleByOwnAxis( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [in] */ double NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalCSAxesDirectionParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDirectingObject )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DirectingObject )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RotateAxis )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AngleByOwnAxis )( 
            ILocalCSAxesDirectionParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
            /* [in] */ double NewVal);
        
        END_INTERFACE
    } ILocalCSAxesDirectionParamVtbl;

    interface ILocalCSAxesDirectionParam
    {
        CONST_VTBL struct ILocalCSAxesDirectionParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalCSAxesDirectionParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalCSAxesDirectionParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalCSAxesDirectionParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalCSAxesDirectionParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalCSAxesDirectionParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalCSAxesDirectionParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalCSAxesDirectionParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalCSAxesDirectionParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILocalCSAxesDirectionParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILocalCSAxesDirectionParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILocalCSAxesDirectionParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILocalCSAxesDirectionParam_SetDirectingObject(This,Axis,Object,Result)	\
    (This)->lpVtbl -> SetDirectingObject(This,Axis,Object,Result)

#define ILocalCSAxesDirectionParam_get_DirectingObject(This,Axis,Result)	\
    (This)->lpVtbl -> get_DirectingObject(This,Axis,Result)

#define ILocalCSAxesDirectionParam_RotateAxis(This,Axis,Result)	\
    (This)->lpVtbl -> RotateAxis(This,Axis,Result)

#define ILocalCSAxesDirectionParam_put_AngleByOwnAxis(This,Axis,NewVal)	\
    (This)->lpVtbl -> put_AngleByOwnAxis(This,Axis,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCSAxesDirectionParam_SetDirectingObject_Proxy( 
    ILocalCSAxesDirectionParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
    /* [in] */ IModelObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCSAxesDirectionParam_SetDirectingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSAxesDirectionParam_get_DirectingObject_Proxy( 
    ILocalCSAxesDirectionParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILocalCSAxesDirectionParam_get_DirectingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCSAxesDirectionParam_RotateAxis_Proxy( 
    ILocalCSAxesDirectionParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCSAxesDirectionParam_RotateAxis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCSAxesDirectionParam_put_AngleByOwnAxis_Proxy( 
    ILocalCSAxesDirectionParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Axis,
    /* [in] */ double NewVal);


void __RPC_STUB ILocalCSAxesDirectionParam_put_AngleByOwnAxis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalCSAxesDirectionParam_INTERFACE_DEFINED__ */


#ifndef __ILocalCSEulerParam_INTERFACE_DEFINED__
#define __ILocalCSEulerParam_INTERFACE_DEFINED__

/* interface ILocalCSEulerParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILocalCSEulerParam,0xAD261149,0x1455,0x49bd,0xBA,0x0A,0xB1,0x76,0x0A,0x0C,0x8C,0xB0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AD261149-1455-49bd-BA0A-B1760A0C8CB0")
    ILocalCSEulerParam : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NutationAngle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NutationAngle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrecessionAngle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrecessionAngle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RotationAngle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RotationAngle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalCSEulerParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILocalCSEulerParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILocalCSEulerParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NutationAngle )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NutationAngle )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PrecessionAngle )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PrecessionAngle )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RotationAngle )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RotationAngle )( 
            ILocalCSEulerParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        END_INTERFACE
    } ILocalCSEulerParamVtbl;

    interface ILocalCSEulerParam
    {
        CONST_VTBL struct ILocalCSEulerParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalCSEulerParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalCSEulerParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalCSEulerParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalCSEulerParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalCSEulerParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalCSEulerParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalCSEulerParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalCSEulerParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILocalCSEulerParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILocalCSEulerParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILocalCSEulerParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILocalCSEulerParam_put_NutationAngle(This,NewVal)	\
    (This)->lpVtbl -> put_NutationAngle(This,NewVal)

#define ILocalCSEulerParam_get_NutationAngle(This,Result)	\
    (This)->lpVtbl -> get_NutationAngle(This,Result)

#define ILocalCSEulerParam_put_PrecessionAngle(This,NewVal)	\
    (This)->lpVtbl -> put_PrecessionAngle(This,NewVal)

#define ILocalCSEulerParam_get_PrecessionAngle(This,Result)	\
    (This)->lpVtbl -> get_PrecessionAngle(This,Result)

#define ILocalCSEulerParam_put_RotationAngle(This,NewVal)	\
    (This)->lpVtbl -> put_RotationAngle(This,NewVal)

#define ILocalCSEulerParam_get_RotationAngle(This,Result)	\
    (This)->lpVtbl -> get_RotationAngle(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCSEulerParam_put_NutationAngle_Proxy( 
    ILocalCSEulerParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILocalCSEulerParam_put_NutationAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSEulerParam_get_NutationAngle_Proxy( 
    ILocalCSEulerParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ILocalCSEulerParam_get_NutationAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCSEulerParam_put_PrecessionAngle_Proxy( 
    ILocalCSEulerParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILocalCSEulerParam_put_PrecessionAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSEulerParam_get_PrecessionAngle_Proxy( 
    ILocalCSEulerParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ILocalCSEulerParam_get_PrecessionAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCSEulerParam_put_RotationAngle_Proxy( 
    ILocalCSEulerParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILocalCSEulerParam_put_RotationAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSEulerParam_get_RotationAngle_Proxy( 
    ILocalCSEulerParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ILocalCSEulerParam_get_RotationAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalCSEulerParam_INTERFACE_DEFINED__ */


#ifndef __IPolyLine_INTERFACE_DEFINED__
#define __IPolyLine_INTERFACE_DEFINED__

/* interface IPolyLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPolyLine,0x6CE7843D,0x9AFA,0x48ff,0xB4,0x44,0x61,0xCD,0xF0,0x36,0xD1,0x18);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6CE7843D-9AFA-48ff-B444-61CDF036D118")
    IPolyLine : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexVisible( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Edges( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexParams( 
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ReadFromFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteToFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddVertex( 
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteVertex( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Flush( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexParamsArray( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVertexCoordinatesArray( 
            /* [out] */ VARIANT __RPC_FAR *Coordinates,
            /* [out] */ VARIANT __RPC_FAR *Radiuses,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPolyLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPolyLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPolyLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPolyLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IPolyLine __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexVisible )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexVisible )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexCount )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Edges )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexParams )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReadFromFile )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *WriteToFile )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddVertex )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteVertex )( 
            IPolyLine __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Flush )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexParamsArray )( 
            IPolyLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetVertexCoordinatesArray )( 
            IPolyLine __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *Coordinates,
            /* [out] */ VARIANT __RPC_FAR *Radiuses,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IPolyLineVtbl;

    interface IPolyLine
    {
        CONST_VTBL struct IPolyLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPolyLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPolyLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPolyLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPolyLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPolyLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPolyLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPolyLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPolyLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPolyLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPolyLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPolyLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPolyLine_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPolyLine_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IPolyLine_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IPolyLine_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IPolyLine_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IPolyLine_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IPolyLine_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IPolyLine_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IPolyLine_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IPolyLine_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define IPolyLine_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define IPolyLine_put_VertexVisible(This,Val)	\
    (This)->lpVtbl -> put_VertexVisible(This,Val)

#define IPolyLine_get_VertexVisible(This,Result)	\
    (This)->lpVtbl -> get_VertexVisible(This,Result)

#define IPolyLine_get_VertexCount(This,Result)	\
    (This)->lpVtbl -> get_VertexCount(This,Result)

#define IPolyLine_get_Edges(This,Result)	\
    (This)->lpVtbl -> get_Edges(This,Result)

#define IPolyLine_get_VertexParams(This,Index,Result)	\
    (This)->lpVtbl -> get_VertexParams(This,Index,Result)

#define IPolyLine_ReadFromFile(This,FileName,Result)	\
    (This)->lpVtbl -> ReadFromFile(This,FileName,Result)

#define IPolyLine_WriteToFile(This,FileName,Result)	\
    (This)->lpVtbl -> WriteToFile(This,FileName,Result)

#define IPolyLine_AddVertex(This,Index,Result)	\
    (This)->lpVtbl -> AddVertex(This,Index,Result)

#define IPolyLine_DeleteVertex(This,Index,Result)	\
    (This)->lpVtbl -> DeleteVertex(This,Index,Result)

#define IPolyLine_Flush(This,Result)	\
    (This)->lpVtbl -> Flush(This,Result)

#define IPolyLine_get_VertexParamsArray(This,Result)	\
    (This)->lpVtbl -> get_VertexParamsArray(This,Result)

#define IPolyLine_GetVertexCoordinatesArray(This,Coordinates,Radiuses,Result)	\
    (This)->lpVtbl -> GetVertexCoordinatesArray(This,Coordinates,Radiuses,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPolyLine_put_Closed_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPolyLine_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine_get_Closed_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPolyLine_put_VertexVisible_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPolyLine_put_VertexVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine_get_VertexVisible_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_get_VertexVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine_get_VertexCount_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IPolyLine_get_VertexCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine_get_Edges_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IPolyLine_get_Edges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine_get_VertexParams_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPolyLine_get_VertexParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine_ReadFromFile_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_ReadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine_WriteToFile_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_WriteToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine_AddVertex_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ ICurveVertexParam __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPolyLine_AddVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine_DeleteVertex_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_DeleteVertex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine_Flush_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_Flush_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine_get_VertexParamsArray_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IPolyLine_get_VertexParamsArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine_GetVertexCoordinatesArray_Proxy( 
    IPolyLine __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *Coordinates,
    /* [out] */ VARIANT __RPC_FAR *Radiuses,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine_GetVertexCoordinatesArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPolyLine_INTERFACE_DEFINED__ */


#ifndef __IPolyLines_INTERFACE_DEFINED__
#define __IPolyLines_INTERFACE_DEFINED__

/* interface IPolyLines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPolyLines,0x0CF9B989,0x29F8,0x495f,0x9D,0xDA,0x8C,0x2C,0xAD,0x84,0x0B,0xB6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0CF9B989-29F8-495f-9DDA-8C2CAD840BB6")
    IPolyLines : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PolyLine( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPolyLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IPolyLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPolyLinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPolyLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPolyLines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPolyLines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPolyLines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPolyLines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPolyLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPolyLines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IPolyLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PolyLine )( 
            IPolyLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPolyLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPolyLines __RPC_FAR * This,
            /* [retval][out] */ IPolyLine __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IPolyLinesVtbl;

    interface IPolyLines
    {
        CONST_VTBL struct IPolyLinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPolyLines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPolyLines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPolyLines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPolyLines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPolyLines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPolyLines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPolyLines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPolyLines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPolyLines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPolyLines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPolyLines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPolyLines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IPolyLines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IPolyLines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IPolyLines_get_PolyLine(This,Index,Result)	\
    (This)->lpVtbl -> get_PolyLine(This,Index,Result)

#define IPolyLines_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLines_get_PolyLine_Proxy( 
    IPolyLines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPolyLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPolyLines_get_PolyLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLines_Add_Proxy( 
    IPolyLines __RPC_FAR * This,
    /* [retval][out] */ IPolyLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPolyLines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPolyLines_INTERFACE_DEFINED__ */


#ifndef __IRoughParams_INTERFACE_DEFINED__
#define __IRoughParams_INTERFACE_DEFINED__

/* interface IRoughParams */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRoughParams,0x6C1943CE,0x8FDB,0x47d2,0x9B,0x2F,0x95,0xF7,0xB8,0x51,0xBE,0x3D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6C1943CE-8FDB-47d2-9B2F-95F7B851BE3D")
    IRoughParams : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignType( 
            /* [retval][out] */ /* external definition not present */ ksRoughSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignType( 
            /* [in] */ /* external definition not present */ ksRoughSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RoughParamText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProcessText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseLengthText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrendText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProcessingByContour( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProcessingByContour( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLength( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLength( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderAngle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderAngle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ /* external definition not present */ ksArrowEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowInside( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowInside( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRoughParamsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRoughParams __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRoughParams __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRoughParams __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignType )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksRoughSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignType )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksRoughSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RoughParamText )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProcessText )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseLengthText )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TrendText )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ProcessingByContour )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ProcessingByContour )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeaderLength )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeaderLength )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeaderAngle )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeaderAngle )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowInside )( 
            IRoughParams __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowInside )( 
            IRoughParams __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IRoughParamsVtbl;

    interface IRoughParams
    {
        CONST_VTBL struct IRoughParamsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRoughParams_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRoughParams_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRoughParams_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRoughParams_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRoughParams_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRoughParams_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRoughParams_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRoughParams_get_SignType(This,Result)	\
    (This)->lpVtbl -> get_SignType(This,Result)

#define IRoughParams_put_SignType(This,Value)	\
    (This)->lpVtbl -> put_SignType(This,Value)

#define IRoughParams_get_RoughParamText(This,PVal)	\
    (This)->lpVtbl -> get_RoughParamText(This,PVal)

#define IRoughParams_get_ProcessText(This,PVal)	\
    (This)->lpVtbl -> get_ProcessText(This,PVal)

#define IRoughParams_get_BaseLengthText(This,PVal)	\
    (This)->lpVtbl -> get_BaseLengthText(This,PVal)

#define IRoughParams_get_TrendText(This,PVal)	\
    (This)->lpVtbl -> get_TrendText(This,PVal)

#define IRoughParams_get_ProcessingByContour(This,Result)	\
    (This)->lpVtbl -> get_ProcessingByContour(This,Result)

#define IRoughParams_put_ProcessingByContour(This,Value)	\
    (This)->lpVtbl -> put_ProcessingByContour(This,Value)

#define IRoughParams_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define IRoughParams_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IRoughParams_get_LeaderLength(This,Result)	\
    (This)->lpVtbl -> get_LeaderLength(This,Result)

#define IRoughParams_put_LeaderLength(This,Value)	\
    (This)->lpVtbl -> put_LeaderLength(This,Value)

#define IRoughParams_get_LeaderAngle(This,Result)	\
    (This)->lpVtbl -> get_LeaderAngle(This,Result)

#define IRoughParams_put_LeaderAngle(This,Value)	\
    (This)->lpVtbl -> put_LeaderAngle(This,Value)

#define IRoughParams_get_ArrowType(This,Result)	\
    (This)->lpVtbl -> get_ArrowType(This,Result)

#define IRoughParams_put_ArrowType(This,Value)	\
    (This)->lpVtbl -> put_ArrowType(This,Value)

#define IRoughParams_get_ArrowInside(This,Result)	\
    (This)->lpVtbl -> get_ArrowInside(This,Result)

#define IRoughParams_put_ArrowInside(This,Value)	\
    (This)->lpVtbl -> put_ArrowInside(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_SignType_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksRoughSignEnum __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_SignType_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksRoughSignEnum Value);


void __RPC_STUB IRoughParams_put_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_RoughParamText_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IRoughParams_get_RoughParamText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_ProcessText_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IRoughParams_get_ProcessText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_BaseLengthText_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IRoughParams_get_BaseLengthText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_TrendText_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IRoughParams_get_TrendText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_ProcessingByContour_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_ProcessingByContour_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_ProcessingByContour_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRoughParams_put_ProcessingByContour_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_ShelfDirection_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_ShelfDirection_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB IRoughParams_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_LeaderLength_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_LeaderLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_LeaderLength_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRoughParams_put_LeaderLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_LeaderAngle_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_LeaderAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_LeaderAngle_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRoughParams_put_LeaderAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_ArrowType_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_ArrowType_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum Value);


void __RPC_STUB IRoughParams_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughParams_get_ArrowInside_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRoughParams_get_ArrowInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRoughParams_put_ArrowInside_Proxy( 
    IRoughParams __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRoughParams_put_ArrowInside_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRoughParams_INTERFACE_DEFINED__ */


#ifndef __IBranchs3D_INTERFACE_DEFINED__
#define __IBranchs3D_INTERFACE_DEFINED__

/* interface IBranchs3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBranchs3D,0xAFE08AEC,0xF751,0x42d9,0xA6,0xF5,0x3C,0x00,0x4E,0x4D,0x41,0xA6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AFE08AEC-F751-42d9-A6F5-3C004E4D41A6")
    IBranchs3D : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBranchBeginPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBranchBeginPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBranchEndPoint( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBranchEndPoint( 
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchPoints( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPoints( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPointsCount( 
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranch( 
            /* [in] */ VARIANT Points,
            IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranchByPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteBranch( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchObject( 
            /* [in] */ long Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchObjects( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchEndPoints( 
            /* [retval][out] */ VARIANT __RPC_FAR *Points) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBranchs3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBranchs3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBranchs3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBranchs3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchCount )( 
            IBranchs3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBranchBeginPoint )( 
            IBranchs3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBranchBeginPoint )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBranchEndPoint )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBranchEndPoint )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchPoints )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPoints )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPointsCount )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranch )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ VARIANT Points,
            IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranchByPoint )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteBranch )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchObject )( 
            IBranchs3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchObjects )( 
            IBranchs3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchEndPoints )( 
            IBranchs3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Points);
        
        END_INTERFACE
    } IBranchs3DVtbl;

    interface IBranchs3D
    {
        CONST_VTBL struct IBranchs3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBranchs3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBranchs3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBranchs3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBranchs3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBranchs3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBranchs3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBranchs3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBranchs3D_get_BranchCount(This,Result)	\
    (This)->lpVtbl -> get_BranchCount(This,Result)

#define IBranchs3D_GetBranchBeginPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetBranchBeginPoint(This,X,Y,Z,Result)

#define IBranchs3D_SetBranchBeginPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetBranchBeginPoint(This,X,Y,Z,Result)

#define IBranchs3D_GetBranchEndPoint(This,Index,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetBranchEndPoint(This,Index,X,Y,Z,Result)

#define IBranchs3D_SetBranchEndPoint(This,Index,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetBranchEndPoint(This,Index,X,Y,Z,Result)

#define IBranchs3D_put_BranchPoints(This,Index,Points)	\
    (This)->lpVtbl -> put_BranchPoints(This,Index,Points)

#define IBranchs3D_get_BranchPoints(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchPoints(This,Index,PVal)

#define IBranchs3D_get_BranchPointsCount(This,Index,Result)	\
    (This)->lpVtbl -> get_BranchPointsCount(This,Index,Result)

#define IBranchs3D_AddBranch(This,Points,Object,Result)	\
    (This)->lpVtbl -> AddBranch(This,Points,Object,Result)

#define IBranchs3D_AddBranchByPoint(This,X,Y,Z,Object,Result)	\
    (This)->lpVtbl -> AddBranchByPoint(This,X,Y,Z,Object,Result)

#define IBranchs3D_DeleteBranch(This,Index,Result)	\
    (This)->lpVtbl -> DeleteBranch(This,Index,Result)

#define IBranchs3D_get_BranchObject(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchObject(This,Index,PVal)

#define IBranchs3D_get_BranchObjects(This,PVal)	\
    (This)->lpVtbl -> get_BranchObjects(This,PVal)

#define IBranchs3D_get_BranchEndPoints(This,Points)	\
    (This)->lpVtbl -> get_BranchEndPoints(This,Points)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs3D_get_BranchCount_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_get_BranchCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_GetBranchBeginPoint_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_GetBranchBeginPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_SetBranchBeginPoint_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_SetBranchBeginPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_GetBranchEndPoint_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_GetBranchEndPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_SetBranchEndPoint_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_SetBranchEndPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBranchs3D_put_BranchPoints_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Points);


void __RPC_STUB IBranchs3D_put_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs3D_get_BranchPoints_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IBranchs3D_get_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs3D_get_BranchPointsCount_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_get_BranchPointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_AddBranch_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ VARIANT Points,
    IModelObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_AddBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_AddBranchByPoint_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    IModelObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_AddBranchByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs3D_DeleteBranch_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs3D_DeleteBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs3D_get_BranchObject_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBranchs3D_get_BranchObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs3D_get_BranchObjects_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IBranchs3D_get_BranchObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs3D_get_BranchEndPoints_Proxy( 
    IBranchs3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Points);


void __RPC_STUB IBranchs3D_get_BranchEndPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBranchs3D_INTERFACE_DEFINED__ */


#ifndef __IBaseLeader3D_INTERFACE_DEFINED__
#define __IBaseLeader3D_INTERFACE_DEFINED__

/* interface IBaseLeader3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBaseLeader3D,0x7170F38E,0x8230,0x4c9c,0xB3,0x6B,0x0B,0xAC,0xBB,0x27,0xB1,0x23);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7170F38E-8230-4c9c-B36B-0BACBB27B123")
    IBaseLeader3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePlane( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePlane( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositionObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositionObject( 
            /* [in] */ IModelObject __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPosition( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPosition( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ /* external definition not present */ ksArrowEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBaseLeader3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBaseLeader3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBaseLeader3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BasePlane )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BasePlane )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositionObject )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositionObject )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPosition )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPosition )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            IBaseLeader3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum Value);
        
        END_INTERFACE
    } IBaseLeader3DVtbl;

    interface IBaseLeader3D
    {
        CONST_VTBL struct IBaseLeader3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBaseLeader3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBaseLeader3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBaseLeader3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBaseLeader3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBaseLeader3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBaseLeader3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBaseLeader3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBaseLeader3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBaseLeader3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBaseLeader3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBaseLeader3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBaseLeader3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IBaseLeader3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IBaseLeader3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IBaseLeader3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IBaseLeader3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IBaseLeader3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IBaseLeader3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IBaseLeader3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IBaseLeader3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IBaseLeader3D_get_BasePlane(This,Val)	\
    (This)->lpVtbl -> get_BasePlane(This,Val)

#define IBaseLeader3D_put_BasePlane(This,Val)	\
    (This)->lpVtbl -> put_BasePlane(This,Val)

#define IBaseLeader3D_get_PositionObject(This,val)	\
    (This)->lpVtbl -> get_PositionObject(This,val)

#define IBaseLeader3D_put_PositionObject(This,Val)	\
    (This)->lpVtbl -> put_PositionObject(This,Val)

#define IBaseLeader3D_GetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetPosition(This,X,Y,Z,Result)

#define IBaseLeader3D_SetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetPosition(This,X,Y,Z,Result)

#define IBaseLeader3D_get_ArrowType(This,Result)	\
    (This)->lpVtbl -> get_ArrowType(This,Result)

#define IBaseLeader3D_put_ArrowType(This,Value)	\
    (This)->lpVtbl -> put_ArrowType(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_get_BasePlane_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);


void __RPC_STUB IBaseLeader3D_get_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_put_BasePlane_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val);


void __RPC_STUB IBaseLeader3D_put_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_get_PositionObject_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *val);


void __RPC_STUB IBaseLeader3D_get_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_put_PositionObject_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Val);


void __RPC_STUB IBaseLeader3D_put_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_GetPosition_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBaseLeader3D_GetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_SetPosition_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBaseLeader3D_SetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_get_ArrowType_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);


void __RPC_STUB IBaseLeader3D_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLeader3D_put_ArrowType_Proxy( 
    IBaseLeader3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum Value);


void __RPC_STUB IBaseLeader3D_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBaseLeader3D_INTERFACE_DEFINED__ */


#ifndef __ILeaders3D_INTERFACE_DEFINED__
#define __ILeaders3D_INTERFACE_DEFINED__

/* interface ILeaders3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILeaders3D,0xC6E6BDD4,0x2B0E,0x49bf,0x87,0xD3,0x04,0xE8,0x00,0x20,0x0D,0xDC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C6E6BDD4-2B0E-49bf-87D3-04E800200DDC")
    ILeaders3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Leader3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBaseLeader3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum DimType,
            /* [retval][out] */ IBaseLeader3D __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILeaders3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILeaders3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILeaders3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILeaders3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILeaders3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILeaders3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILeaders3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILeaders3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILeaders3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILeaders3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Leader3D )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBaseLeader3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILeaders3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum DimType,
            /* [retval][out] */ IBaseLeader3D __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ILeaders3DVtbl;

    interface ILeaders3D
    {
        CONST_VTBL struct ILeaders3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILeaders3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILeaders3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILeaders3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILeaders3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILeaders3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILeaders3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILeaders3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILeaders3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILeaders3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILeaders3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILeaders3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILeaders3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILeaders3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILeaders3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILeaders3D_get_Leader3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Leader3D(This,Index,Result)

#define ILeaders3D_Add(This,DimType,Value)	\
    (This)->lpVtbl -> Add(This,DimType,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeaders3D_get_Leader3D_Proxy( 
    ILeaders3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBaseLeader3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILeaders3D_get_Leader3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILeaders3D_Add_Proxy( 
    ILeaders3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum DimType,
    /* [retval][out] */ IBaseLeader3D __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ILeaders3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILeaders3D_INTERFACE_DEFINED__ */


#ifndef __IRough3D_INTERFACE_DEFINED__
#define __IRough3D_INTERFACE_DEFINED__

/* interface IRough3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRough3D,0x083A4984,0x199E,0x4591,0x8F,0xC3,0xCB,0x8A,0x9D,0x7D,0x43,0x03);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("083A4984-199E-4591-8FC3-CB8A9D7D4303")
    IRough3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePlane( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePlane( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositionObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositionObject( 
            /* [in] */ IModelObject __RPC_FAR *val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPosition( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPosition( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBasePosition( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBasePosition( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetShelfPosition( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetShelfPosition( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRough3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRough3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRough3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRough3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IRough3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BasePlane )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BasePlane )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositionObject )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositionObject )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPosition )( 
            IRough3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPosition )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IRough3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBasePosition )( 
            IRough3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBasePosition )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetShelfPosition )( 
            IRough3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetShelfPosition )( 
            IRough3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IRough3DVtbl;

    interface IRough3D
    {
        CONST_VTBL struct IRough3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRough3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRough3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRough3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRough3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRough3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRough3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRough3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRough3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRough3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRough3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRough3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRough3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IRough3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IRough3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IRough3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IRough3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IRough3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IRough3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IRough3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IRough3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IRough3D_get_BasePlane(This,Val)	\
    (This)->lpVtbl -> get_BasePlane(This,Val)

#define IRough3D_put_BasePlane(This,Val)	\
    (This)->lpVtbl -> put_BasePlane(This,Val)

#define IRough3D_get_PositionObject(This,val)	\
    (This)->lpVtbl -> get_PositionObject(This,val)

#define IRough3D_put_PositionObject(This,val)	\
    (This)->lpVtbl -> put_PositionObject(This,val)

#define IRough3D_GetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetPosition(This,X,Y,Z,Result)

#define IRough3D_SetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetPosition(This,X,Y,Z,Result)

#define IRough3D_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IRough3D_GetBasePosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetBasePosition(This,X,Y,Z,Result)

#define IRough3D_SetBasePosition(This,X,Y,Z,Object,Result)	\
    (This)->lpVtbl -> SetBasePosition(This,X,Y,Z,Object,Result)

#define IRough3D_GetShelfPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetShelfPosition(This,X,Y,Z,Result)

#define IRough3D_SetShelfPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetShelfPosition(This,X,Y,Z,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough3D_get_BasePlane_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);


void __RPC_STUB IRough3D_get_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough3D_put_BasePlane_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val);


void __RPC_STUB IRough3D_put_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough3D_get_PositionObject_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *val);


void __RPC_STUB IRough3D_get_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough3D_put_PositionObject_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *val);


void __RPC_STUB IRough3D_put_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRough3D_GetPosition_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRough3D_GetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRough3D_SetPosition_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRough3D_SetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough3D_get_BaseObject_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IRough3D_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRough3D_GetBasePosition_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRough3D_GetBasePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRough3D_SetBasePosition_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [in] */ IModelObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRough3D_SetBasePosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRough3D_GetShelfPosition_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRough3D_GetShelfPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRough3D_SetShelfPosition_Proxy( 
    IRough3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRough3D_SetShelfPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRough3D_INTERFACE_DEFINED__ */


#ifndef __IRoughs3D_INTERFACE_DEFINED__
#define __IRoughs3D_INTERFACE_DEFINED__

/* interface IRoughs3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRoughs3D,0x8533772B,0x1C43,0x4fdd,0x9F,0x0E,0xBC,0x92,0xF1,0x58,0x62,0xC9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8533772B-1C43-4fdd-9F0E-BC92F15862C9")
    IRoughs3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rough3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRough3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRough3D __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRoughs3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRoughs3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRoughs3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRoughs3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRoughs3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRoughs3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRoughs3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRoughs3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRoughs3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rough3D )( 
            IRoughs3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRough3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRoughs3D __RPC_FAR * This,
            /* [retval][out] */ IRough3D __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IRoughs3DVtbl;

    interface IRoughs3D
    {
        CONST_VTBL struct IRoughs3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRoughs3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRoughs3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRoughs3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRoughs3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRoughs3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRoughs3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRoughs3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRoughs3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRoughs3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRoughs3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRoughs3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRoughs3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRoughs3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRoughs3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRoughs3D_get_Rough3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Rough3D(This,Index,Result)

#define IRoughs3D_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughs3D_get_Rough3D_Proxy( 
    IRoughs3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRough3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRoughs3D_get_Rough3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRoughs3D_Add_Proxy( 
    IRoughs3D __RPC_FAR * This,
    /* [retval][out] */ IRough3D __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IRoughs3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRoughs3D_INTERFACE_DEFINED__ */


#ifndef __IBases3D_INTERFACE_DEFINED__
#define __IBases3D_INTERFACE_DEFINED__

/* interface IBases3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBases3D,0x8BC582B3,0x1F82,0x4d19,0xAF,0x95,0x24,0xCB,0xAD,0x41,0x2E,0x52);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8BC582B3-1F82-4d19-AF95-24CBAD412E52")
    IBases3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Base3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBase3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBase3D __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBases3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBases3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBases3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBases3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBases3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBases3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBases3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBases3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBases3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Base3D )( 
            IBases3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBase3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBases3D __RPC_FAR * This,
            /* [retval][out] */ IBase3D __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IBases3DVtbl;

    interface IBases3D
    {
        CONST_VTBL struct IBases3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBases3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBases3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBases3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBases3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBases3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBases3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBases3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBases3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBases3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBases3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBases3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBases3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBases3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBases3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBases3D_get_Base3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Base3D(This,Index,Result)

#define IBases3D_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBases3D_get_Base3D_Proxy( 
    IBases3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBase3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBases3D_get_Base3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBases3D_Add_Proxy( 
    IBases3D __RPC_FAR * This,
    /* [retval][out] */ IBase3D __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IBases3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBases3D_INTERFACE_DEFINED__ */


#ifndef __IBase3D_INTERFACE_DEFINED__
#define __IBase3D_INTERFACE_DEFINED__

/* interface IBase3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBase3D,0xD5B737F6,0xFD3D,0x49f8,0xB3,0xD8,0xC8,0x47,0x5E,0x5E,0x3D,0x3A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D5B737F6-FD3D-49f8-B3D8-C8475E5E3D3A")
    IBase3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePlane( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePlane( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositionObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositionObject( 
            /* [in] */ IModelObject __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPosition( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPosition( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSorted( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSorted( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBranchBeginPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBranchBeginPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBranchEndPoint( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBranchEndPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBase3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBase3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBase3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBase3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IBase3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BasePlane )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BasePlane )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositionObject )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositionObject )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPosition )( 
            IBase3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPosition )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawType )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawType )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSorted )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSorted )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IBase3D __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBranchBeginPoint )( 
            IBase3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBranchBeginPoint )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBranchEndPoint )( 
            IBase3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetBranchEndPoint )( 
            IBase3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IBase3DVtbl;

    interface IBase3D
    {
        CONST_VTBL struct IBase3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBase3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBase3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBase3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBase3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBase3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBase3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBase3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBase3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBase3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBase3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBase3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBase3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IBase3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IBase3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IBase3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IBase3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IBase3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IBase3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IBase3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IBase3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IBase3D_get_BasePlane(This,Val)	\
    (This)->lpVtbl -> get_BasePlane(This,Val)

#define IBase3D_put_BasePlane(This,Val)	\
    (This)->lpVtbl -> put_BasePlane(This,Val)

#define IBase3D_get_PositionObject(This,Val)	\
    (This)->lpVtbl -> get_PositionObject(This,Val)

#define IBase3D_put_PositionObject(This,Val)	\
    (This)->lpVtbl -> put_PositionObject(This,Val)

#define IBase3D_GetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetPosition(This,X,Y,Z,Result)

#define IBase3D_SetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetPosition(This,X,Y,Z,Result)

#define IBase3D_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IBase3D_get_DrawType(This,Result)	\
    (This)->lpVtbl -> get_DrawType(This,Result)

#define IBase3D_put_DrawType(This,Value)	\
    (This)->lpVtbl -> put_DrawType(This,Value)

#define IBase3D_get_AutoSorted(This,Result)	\
    (This)->lpVtbl -> get_AutoSorted(This,Result)

#define IBase3D_put_AutoSorted(This,Value)	\
    (This)->lpVtbl -> put_AutoSorted(This,Value)

#define IBase3D_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IBase3D_GetBranchBeginPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetBranchBeginPoint(This,X,Y,Z,Result)

#define IBase3D_SetBranchBeginPoint(This,X,Y,Z,Object,Result)	\
    (This)->lpVtbl -> SetBranchBeginPoint(This,X,Y,Z,Object,Result)

#define IBase3D_GetBranchEndPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetBranchEndPoint(This,X,Y,Z,Result)

#define IBase3D_SetBranchEndPoint(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetBranchEndPoint(This,X,Y,Z,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase3D_get_BasePlane_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);


void __RPC_STUB IBase3D_get_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase3D_put_BasePlane_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum Val);


void __RPC_STUB IBase3D_put_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase3D_get_PositionObject_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Val);


void __RPC_STUB IBase3D_get_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase3D_put_PositionObject_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Val);


void __RPC_STUB IBase3D_put_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBase3D_GetPosition_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_GetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBase3D_SetPosition_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_SetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase3D_get_BaseObject_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IBase3D_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase3D_get_DrawType_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_get_DrawType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase3D_put_DrawType_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBase3D_put_DrawType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase3D_get_AutoSorted_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_get_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase3D_put_AutoSorted_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBase3D_put_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase3D_get_Text_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBase3D_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBase3D_GetBranchBeginPoint_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_GetBranchBeginPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBase3D_SetBranchBeginPoint_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [in] */ IModelObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_SetBranchBeginPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBase3D_GetBranchEndPoint_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_GetBranchEndPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBase3D_SetBranchEndPoint_Proxy( 
    IBase3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase3D_SetBranchEndPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBase3D_INTERFACE_DEFINED__ */


#ifndef __ITolerances3D_INTERFACE_DEFINED__
#define __ITolerances3D_INTERFACE_DEFINED__

/* interface ITolerances3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITolerances3D,0x82ADDA0C,0xB8DE,0x4336,0xA5,0xCC,0xB3,0x65,0x04,0xA8,0x0E,0x2D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("82ADDA0C-B8DE-4336-A5CC-B36504A80E2D")
    ITolerances3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tolerance3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ITolerance3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ITolerance3D __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITolerances3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITolerances3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITolerances3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITolerances3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITolerances3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITolerances3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITolerances3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITolerances3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ITolerances3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tolerance3D )( 
            ITolerances3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ITolerance3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ITolerances3D __RPC_FAR * This,
            /* [retval][out] */ ITolerance3D __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ITolerances3DVtbl;

    interface ITolerances3D
    {
        CONST_VTBL struct ITolerances3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITolerances3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITolerances3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITolerances3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITolerances3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITolerances3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITolerances3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITolerances3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITolerances3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITolerances3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITolerances3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITolerances3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITolerances3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ITolerances3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ITolerances3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ITolerances3D_get_Tolerance3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Tolerance3D(This,Index,Result)

#define ITolerances3D_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerances3D_get_Tolerance3D_Proxy( 
    ITolerances3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ITolerance3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITolerances3D_get_Tolerance3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITolerances3D_Add_Proxy( 
    ITolerances3D __RPC_FAR * This,
    /* [retval][out] */ ITolerance3D __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ITolerances3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITolerances3D_INTERFACE_DEFINED__ */


#ifndef __ITolerance3D_INTERFACE_DEFINED__
#define __ITolerance3D_INTERFACE_DEFINED__

/* interface ITolerance3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITolerance3D,0x9CF700CF,0x72DB,0x44eb,0xA1,0x91,0x38,0x14,0xA3,0xCC,0x21,0xBD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9CF700CF-72DB-44eb-A191-3814A3CC21BD")
    ITolerance3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePlane( 
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePlane( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositionObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositionObject( 
            /* [in] */ IModelObject __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPosition( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPosition( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITolerance3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITolerance3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITolerance3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITolerance3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ITolerance3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BasePlane )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BasePlane )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositionObject )( 
            ITolerance3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositionObject )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPosition )( 
            ITolerance3D __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPosition )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            ITolerance3D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } ITolerance3DVtbl;

    interface ITolerance3D
    {
        CONST_VTBL struct ITolerance3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITolerance3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITolerance3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITolerance3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITolerance3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITolerance3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITolerance3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITolerance3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITolerance3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITolerance3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITolerance3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITolerance3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITolerance3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ITolerance3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ITolerance3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ITolerance3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ITolerance3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ITolerance3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ITolerance3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ITolerance3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ITolerance3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ITolerance3D_get_BasePlane(This,Val)	\
    (This)->lpVtbl -> get_BasePlane(This,Val)

#define ITolerance3D_put_BasePlane(This,val)	\
    (This)->lpVtbl -> put_BasePlane(This,val)

#define ITolerance3D_get_PositionObject(This,Val)	\
    (This)->lpVtbl -> get_PositionObject(This,Val)

#define ITolerance3D_put_PositionObject(This,Val)	\
    (This)->lpVtbl -> put_PositionObject(This,Val)

#define ITolerance3D_GetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> GetPosition(This,X,Y,Z,Result)

#define ITolerance3D_SetPosition(This,X,Y,Z,Result)	\
    (This)->lpVtbl -> SetPosition(This,X,Y,Z,Result)

#define ITolerance3D_get_ArrowType(This,Index,Result)	\
    (This)->lpVtbl -> get_ArrowType(This,Index,Result)

#define ITolerance3D_put_ArrowType(This,Index,Value)	\
    (This)->lpVtbl -> put_ArrowType(This,Index,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerance3D_get_BasePlane_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Val);


void __RPC_STUB ITolerance3D_get_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITolerance3D_put_BasePlane_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum val);


void __RPC_STUB ITolerance3D_put_BasePlane_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerance3D_get_PositionObject_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Val);


void __RPC_STUB ITolerance3D_get_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITolerance3D_put_PositionObject_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Val);


void __RPC_STUB ITolerance3D_put_PositionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITolerance3D_GetPosition_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITolerance3D_GetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITolerance3D_SetPosition_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITolerance3D_SetPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerance3D_get_ArrowType_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITolerance3D_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITolerance3D_put_ArrowType_Proxy( 
    ITolerance3D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ITolerance3D_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITolerance3D_INTERFACE_DEFINED__ */


#ifndef __ILocalCSOrientByObjectParam_INTERFACE_DEFINED__
#define __ILocalCSOrientByObjectParam_INTERFACE_DEFINED__

/* interface ILocalCSOrientByObjectParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILocalCSOrientByObjectParam,0x618485E7,0xD88A,0x4dcc,0x88,0x96,0x7E,0xA0,0x4D,0x83,0x1D,0xBB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("618485E7-D88A-4dcc-8896-7EA04D831DBB")
    ILocalCSOrientByObjectParam : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetOrientationObject( 
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OrientationObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalCSOrientByObjectParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetOrientationObject )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OrientationObject )( 
            ILocalCSOrientByObjectParam __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object);
        
        END_INTERFACE
    } ILocalCSOrientByObjectParamVtbl;

    interface ILocalCSOrientByObjectParam
    {
        CONST_VTBL struct ILocalCSOrientByObjectParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalCSOrientByObjectParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalCSOrientByObjectParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalCSOrientByObjectParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalCSOrientByObjectParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalCSOrientByObjectParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalCSOrientByObjectParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalCSOrientByObjectParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalCSOrientByObjectParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILocalCSOrientByObjectParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILocalCSOrientByObjectParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILocalCSOrientByObjectParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILocalCSOrientByObjectParam_SetOrientationObject(This,Object,Result)	\
    (This)->lpVtbl -> SetOrientationObject(This,Object,Result)

#define ILocalCSOrientByObjectParam_get_OrientationObject(This,Object)	\
    (This)->lpVtbl -> get_OrientationObject(This,Object)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalCSOrientByObjectParam_SetOrientationObject_Proxy( 
    ILocalCSOrientByObjectParam __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILocalCSOrientByObjectParam_SetOrientationObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSOrientByObjectParam_get_OrientationObject_Proxy( 
    ILocalCSOrientByObjectParam __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object);


void __RPC_STUB ILocalCSOrientByObjectParam_get_OrientationObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalCSOrientByObjectParam_INTERFACE_DEFINED__ */


#ifndef __IControlPoints_INTERFACE_DEFINED__
#define __IControlPoints_INTERFACE_DEFINED__

/* interface IControlPoints */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IControlPoints,0xE22E30F6,0x05EE,0x4fb5,0x9E,0xEB,0xE2,0x88,0x23,0x4F,0x25,0x6A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E22E30F6-05EE-4fb5-9EEB-E288234F256A")
    IControlPoints : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ControlPoint( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IControlPoint __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IControlPoint __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IControlPointsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IControlPoints __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IControlPoints __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IControlPoints __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IControlPoints __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IControlPoints __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IControlPoints __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IControlPoints __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IControlPoints __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlPoint )( 
            IControlPoints __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IControlPoint __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IControlPoints __RPC_FAR * This,
            /* [retval][out] */ IControlPoint __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IControlPointsVtbl;

    interface IControlPoints
    {
        CONST_VTBL struct IControlPointsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IControlPoints_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IControlPoints_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IControlPoints_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IControlPoints_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IControlPoints_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IControlPoints_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IControlPoints_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IControlPoints_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IControlPoints_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IControlPoints_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IControlPoints_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IControlPoints_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IControlPoints_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IControlPoints_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IControlPoints_get_ControlPoint(This,Index,Result)	\
    (This)->lpVtbl -> get_ControlPoint(This,Index,Result)

#define IControlPoints_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IControlPoints_get_ControlPoint_Proxy( 
    IControlPoints __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IControlPoint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IControlPoints_get_ControlPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IControlPoints_Add_Proxy( 
    IControlPoints __RPC_FAR * This,
    /* [retval][out] */ IControlPoint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IControlPoints_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IControlPoints_INTERFACE_DEFINED__ */


#ifndef __IControlPoint_INTERFACE_DEFINED__
#define __IControlPoint_INTERFACE_DEFINED__

/* interface IControlPoint */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IControlPoint,0x39F4FC2C,0x99E7,0x411b,0x90,0x36,0x9C,0x75,0x6A,0x71,0xE2,0x11);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("39F4FC2C-99E7-411b-9036-9C756A71E211")
    IControlPoint : public IPoint3D
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IControlPointVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IControlPoint __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IControlPoint __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IControlPoint __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IControlPoint __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Z )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Z )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAssociationObject )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationObject )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Symbol )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Symbol )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParameterType )( 
            IControlPoint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParameterType )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parameters )( 
            IControlPoint __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IControlPointVtbl;

    interface IControlPoint
    {
        CONST_VTBL struct IControlPointVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IControlPoint_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IControlPoint_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IControlPoint_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IControlPoint_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IControlPoint_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IControlPoint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IControlPoint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IControlPoint_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IControlPoint_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IControlPoint_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IControlPoint_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IControlPoint_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IControlPoint_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IControlPoint_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IControlPoint_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IControlPoint_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IControlPoint_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IControlPoint_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IControlPoint_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IControlPoint_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IControlPoint_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IControlPoint_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IControlPoint_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IControlPoint_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IControlPoint_put_Z(This,NewVal)	\
    (This)->lpVtbl -> put_Z(This,NewVal)

#define IControlPoint_get_Z(This,PVal)	\
    (This)->lpVtbl -> get_Z(This,PVal)

#define IControlPoint_SetAssociationObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetAssociationObject(This,NewVal,Result)

#define IControlPoint_get_AssociationObject(This,PVal)	\
    (This)->lpVtbl -> get_AssociationObject(This,PVal)

#define IControlPoint_put_Symbol(This,NewVal)	\
    (This)->lpVtbl -> put_Symbol(This,NewVal)

#define IControlPoint_get_Symbol(This,PVal)	\
    (This)->lpVtbl -> get_Symbol(This,PVal)

#define IControlPoint_put_ParameterType(This,NewVal)	\
    (This)->lpVtbl -> put_ParameterType(This,NewVal)

#define IControlPoint_get_ParameterType(This,PVal)	\
    (This)->lpVtbl -> get_ParameterType(This,PVal)

#define IControlPoint_get_Parameters(This,Result)	\
    (This)->lpVtbl -> get_Parameters(This,Result)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IControlPoint_INTERFACE_DEFINED__ */


#ifndef __IConjunctivePoints_INTERFACE_DEFINED__
#define __IConjunctivePoints_INTERFACE_DEFINED__

/* interface IConjunctivePoints */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IConjunctivePoints,0x4DF343A0,0x8744,0x429d,0xA6,0x05,0x0E,0xEA,0xBB,0x7B,0x5F,0x23);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4DF343A0-8744-429d-A605-0EEABB7B5F23")
    IConjunctivePoints : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ConjunctivePoint( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IConjunctivePoint __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IConjunctivePoint __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IConjunctivePointsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IConjunctivePoints __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IConjunctivePoints __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ConjunctivePoint )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IConjunctivePoint __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IConjunctivePoints __RPC_FAR * This,
            /* [retval][out] */ IConjunctivePoint __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IConjunctivePointsVtbl;

    interface IConjunctivePoints
    {
        CONST_VTBL struct IConjunctivePointsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IConjunctivePoints_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IConjunctivePoints_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IConjunctivePoints_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IConjunctivePoints_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IConjunctivePoints_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IConjunctivePoints_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IConjunctivePoints_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IConjunctivePoints_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IConjunctivePoints_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IConjunctivePoints_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IConjunctivePoints_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IConjunctivePoints_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IConjunctivePoints_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IConjunctivePoints_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IConjunctivePoints_get_ConjunctivePoint(This,Index,Result)	\
    (This)->lpVtbl -> get_ConjunctivePoint(This,Index,Result)

#define IConjunctivePoints_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IConjunctivePoints_get_ConjunctivePoint_Proxy( 
    IConjunctivePoints __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IConjunctivePoint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IConjunctivePoints_get_ConjunctivePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IConjunctivePoints_Add_Proxy( 
    IConjunctivePoints __RPC_FAR * This,
    /* [retval][out] */ IConjunctivePoint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IConjunctivePoints_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IConjunctivePoints_INTERFACE_DEFINED__ */


#ifndef __IConjunctivePoint_INTERFACE_DEFINED__
#define __IConjunctivePoint_INTERFACE_DEFINED__

/* interface IConjunctivePoint */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IConjunctivePoint,0xBC7AD518,0x9599,0x490b,0x9E,0x2B,0x97,0x11,0xFD,0x9B,0x8D,0x4C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BC7AD518-9599-490b-9E2B-9711FD9B8D4C")
    IConjunctivePoint : public IPoint3D
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDirectionObject1( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirectionObject1( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDirectionObject2( 
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirectionObject2( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction1( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction1( 
            /* [in] */ VARIANT_BOOL val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction2( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction2( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Axis( 
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum val,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IConjunctivePointVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IConjunctivePoint __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IConjunctivePoint __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Z )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Z )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAssociationObject )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AssociationObject )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Symbol )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Symbol )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParameterType )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPoint3DTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParameterType )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPoint3DTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parameters )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDirectionObject1 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DirectionObject1 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetDirectionObject2 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DirectionObject2 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction1 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction1 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction2 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction2 )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Axis )( 
            IConjunctivePoint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksObj3dTypeEnum val,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IConjunctivePointVtbl;

    interface IConjunctivePoint
    {
        CONST_VTBL struct IConjunctivePointVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IConjunctivePoint_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IConjunctivePoint_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IConjunctivePoint_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IConjunctivePoint_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IConjunctivePoint_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IConjunctivePoint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IConjunctivePoint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IConjunctivePoint_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IConjunctivePoint_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IConjunctivePoint_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IConjunctivePoint_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IConjunctivePoint_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IConjunctivePoint_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IConjunctivePoint_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IConjunctivePoint_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IConjunctivePoint_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IConjunctivePoint_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IConjunctivePoint_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IConjunctivePoint_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IConjunctivePoint_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IConjunctivePoint_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IConjunctivePoint_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IConjunctivePoint_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IConjunctivePoint_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IConjunctivePoint_put_Z(This,NewVal)	\
    (This)->lpVtbl -> put_Z(This,NewVal)

#define IConjunctivePoint_get_Z(This,PVal)	\
    (This)->lpVtbl -> get_Z(This,PVal)

#define IConjunctivePoint_SetAssociationObject(This,NewVal,Result)	\
    (This)->lpVtbl -> SetAssociationObject(This,NewVal,Result)

#define IConjunctivePoint_get_AssociationObject(This,PVal)	\
    (This)->lpVtbl -> get_AssociationObject(This,PVal)

#define IConjunctivePoint_put_Symbol(This,NewVal)	\
    (This)->lpVtbl -> put_Symbol(This,NewVal)

#define IConjunctivePoint_get_Symbol(This,PVal)	\
    (This)->lpVtbl -> get_Symbol(This,PVal)

#define IConjunctivePoint_put_ParameterType(This,NewVal)	\
    (This)->lpVtbl -> put_ParameterType(This,NewVal)

#define IConjunctivePoint_get_ParameterType(This,PVal)	\
    (This)->lpVtbl -> get_ParameterType(This,PVal)

#define IConjunctivePoint_get_Parameters(This,Result)	\
    (This)->lpVtbl -> get_Parameters(This,Result)


#define IConjunctivePoint_SetDirectionObject1(This,NewVal,Result)	\
    (This)->lpVtbl -> SetDirectionObject1(This,NewVal,Result)

#define IConjunctivePoint_get_DirectionObject1(This,Result)	\
    (This)->lpVtbl -> get_DirectionObject1(This,Result)

#define IConjunctivePoint_SetDirectionObject2(This,NewVal,Result)	\
    (This)->lpVtbl -> SetDirectionObject2(This,NewVal,Result)

#define IConjunctivePoint_get_DirectionObject2(This,Result)	\
    (This)->lpVtbl -> get_DirectionObject2(This,Result)

#define IConjunctivePoint_get_Direction1(This,Val)	\
    (This)->lpVtbl -> get_Direction1(This,Val)

#define IConjunctivePoint_put_Direction1(This,val)	\
    (This)->lpVtbl -> put_Direction1(This,val)

#define IConjunctivePoint_get_Direction2(This,Val)	\
    (This)->lpVtbl -> get_Direction2(This,Val)

#define IConjunctivePoint_put_Direction2(This,Val)	\
    (This)->lpVtbl -> put_Direction2(This,Val)

#define IConjunctivePoint_get_Axis(This,val,Result)	\
    (This)->lpVtbl -> get_Axis(This,val,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_SetDirectionObject1_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IConjunctivePoint_SetDirectionObject1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_get_DirectionObject1_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IConjunctivePoint_get_DirectionObject1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_SetDirectionObject2_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IConjunctivePoint_SetDirectionObject2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_get_DirectionObject2_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IConjunctivePoint_get_DirectionObject2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_get_Direction1_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);


void __RPC_STUB IConjunctivePoint_get_Direction1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_put_Direction1_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL val);


void __RPC_STUB IConjunctivePoint_put_Direction1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_get_Direction2_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Val);


void __RPC_STUB IConjunctivePoint_get_Direction2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_put_Direction2_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IConjunctivePoint_put_Direction2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IConjunctivePoint_get_Axis_Proxy( 
    IConjunctivePoint __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksObj3dTypeEnum val,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IConjunctivePoint_get_Axis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IConjunctivePoint_INTERFACE_DEFINED__ */


#ifndef __ILocalCSObject_INTERFACE_DEFINED__
#define __ILocalCSObject_INTERFACE_DEFINED__

/* interface ILocalCSObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILocalCSObject,0x116F7E59,0xF175,0x47d2,0x83,0x46,0xEB,0x3C,0x87,0xD6,0x05,0x78);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("116F7E59-F175-47d2-8346-EB3C87D60578")
    ILocalCSObject : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ModelObjectParamType( 
            /* [in] */ /* external definition not present */ ksModelObjectParamTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ModelObjectParamType( 
            /* [retval][out] */ /* external definition not present */ ksModelObjectParamTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LocalCoordinateSystem( 
            /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalCSObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILocalCSObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILocalCSObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILocalCSObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILocalCSObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILocalCSObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILocalCSObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILocalCSObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ModelObjectParamType )( 
            ILocalCSObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksModelObjectParamTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectParamType )( 
            ILocalCSObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksModelObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LocalCoordinateSystem )( 
            ILocalCSObject __RPC_FAR * This,
            /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ILocalCSObjectVtbl;

    interface ILocalCSObject
    {
        CONST_VTBL struct ILocalCSObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalCSObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalCSObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalCSObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalCSObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalCSObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalCSObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalCSObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalCSObject_put_ModelObjectParamType(This,NewVal)	\
    (This)->lpVtbl -> put_ModelObjectParamType(This,NewVal)

#define ILocalCSObject_get_ModelObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_ModelObjectParamType(This,PVal)

#define ILocalCSObject_get_LocalCoordinateSystem(This,PVal)	\
    (This)->lpVtbl -> get_LocalCoordinateSystem(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILocalCSObject_put_ModelObjectParamType_Proxy( 
    ILocalCSObject __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksModelObjectParamTypeEnum NewVal);


void __RPC_STUB ILocalCSObject_put_ModelObjectParamType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSObject_get_ModelObjectParamType_Proxy( 
    ILocalCSObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksModelObjectParamTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ILocalCSObject_get_ModelObjectParamType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILocalCSObject_get_LocalCoordinateSystem_Proxy( 
    ILocalCSObject __RPC_FAR * This,
    /* [retval][out] */ ILocalCoordinateSystem __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILocalCSObject_get_LocalCoordinateSystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalCSObject_INTERFACE_DEFINED__ */


#ifndef __ISplitLines_INTERFACE_DEFINED__
#define __ISplitLines_INTERFACE_DEFINED__

/* interface ISplitLines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISplitLines,0x986E4A45,0x362F,0x469d,0xA3,0xAE,0xCE,0x08,0x1B,0x8E,0xA9,0x3A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("986E4A45-362F-469d-A3AE-CE081B8EA93A")
    ISplitLines : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SplitLine( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISplitLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISplitLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISplitLinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISplitLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISplitLines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISplitLines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISplitLines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISplitLines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISplitLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISplitLines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISplitLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SplitLine )( 
            ISplitLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISplitLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISplitLines __RPC_FAR * This,
            /* [retval][out] */ ISplitLine __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISplitLinesVtbl;

    interface ISplitLines
    {
        CONST_VTBL struct ISplitLinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISplitLines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISplitLines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISplitLines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISplitLines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISplitLines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISplitLines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISplitLines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISplitLines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISplitLines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISplitLines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISplitLines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISplitLines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISplitLines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISplitLines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISplitLines_get_SplitLine(This,Index,Result)	\
    (This)->lpVtbl -> get_SplitLine(This,Index,Result)

#define ISplitLines_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISplitLines_get_SplitLine_Proxy( 
    ISplitLines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISplitLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISplitLines_get_SplitLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISplitLines_Add_Proxy( 
    ISplitLines __RPC_FAR * This,
    /* [retval][out] */ ISplitLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISplitLines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISplitLines_INTERFACE_DEFINED__ */


#ifndef __ISplitLine_INTERFACE_DEFINED__
#define __ISplitLine_INTERFACE_DEFINED__

/* interface ISplitLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISplitLine,0x969B49D1,0xE660,0x4e94,0x93,0x43,0xDE,0x5B,0x0F,0x39,0x7B,0x03);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("969B49D1-E660-4e94-9343-DE5B0F397B03")
    ISplitLine : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sketch( 
            /* [in] */ ISketch __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sketch( 
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Faces( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Faces( 
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISplitLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISplitLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISplitLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISplitLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISplitLine __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sketch )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ ISketch __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sketch )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Faces )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Faces )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            ISplitLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            ISplitLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);
        
        END_INTERFACE
    } ISplitLineVtbl;

    interface ISplitLine
    {
        CONST_VTBL struct ISplitLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISplitLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISplitLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISplitLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISplitLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISplitLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISplitLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISplitLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISplitLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISplitLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISplitLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISplitLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISplitLine_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISplitLine_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISplitLine_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISplitLine_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISplitLine_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISplitLine_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISplitLine_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISplitLine_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISplitLine_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISplitLine_put_Sketch(This,PVal)	\
    (This)->lpVtbl -> put_Sketch(This,PVal)

#define ISplitLine_get_Sketch(This,Result)	\
    (This)->lpVtbl -> get_Sketch(This,Result)

#define ISplitLine_get_Faces(This,PVal)	\
    (This)->lpVtbl -> get_Faces(This,PVal)

#define ISplitLine_put_Faces(This,Points)	\
    (This)->lpVtbl -> put_Faces(This,Points)

#define ISplitLine_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define ISplitLine_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISplitLine_put_Sketch_Proxy( 
    ISplitLine __RPC_FAR * This,
    /* [in] */ ISketch __RPC_FAR *PVal);


void __RPC_STUB ISplitLine_put_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISplitLine_get_Sketch_Proxy( 
    ISplitLine __RPC_FAR * This,
    /* [retval][out] */ ISketch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISplitLine_get_Sketch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISplitLine_get_Faces_Proxy( 
    ISplitLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISplitLine_get_Faces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISplitLine_put_Faces_Proxy( 
    ISplitLine __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB ISplitLine_put_Faces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISplitLine_put_Direction_Proxy( 
    ISplitLine __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDirectionTypeEnum NewVal);


void __RPC_STUB ISplitLine_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISplitLine_get_Direction_Proxy( 
    ISplitLine __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDirectionTypeEnum __RPC_FAR *PVal);


void __RPC_STUB ISplitLine_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISplitLine_INTERFACE_DEFINED__ */


#ifndef __ISurfaceContainer_INTERFACE_DEFINED__
#define __ISurfaceContainer_INTERFACE_DEFINED__

/* interface ISurfaceContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfaceContainer,0x2FE3B199,0xA6B2,0x4644,0x99,0x50,0xF9,0x90,0x52,0x50,0xFF,0x0D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2FE3B199-A6B2-4644-9950-F9905250FF0D")
    ISurfaceContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfacePatches( 
            /* [retval][out] */ ISurfacePatches __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FaceRemovers( 
            /* [retval][out] */ IFaceRemovers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceSewers( 
            /* [retval][out] */ ISurfaceSewers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NurbsSurfaces( 
            /* [retval][out] */ INurbsSurfaces __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfaceContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfaceContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfaceContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfacePatches )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [retval][out] */ ISurfacePatches __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FaceRemovers )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [retval][out] */ IFaceRemovers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfaceSewers )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [retval][out] */ ISurfaceSewers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NurbsSurfaces )( 
            ISurfaceContainer __RPC_FAR * This,
            /* [retval][out] */ INurbsSurfaces __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISurfaceContainerVtbl;

    interface ISurfaceContainer
    {
        CONST_VTBL struct ISurfaceContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfaceContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfaceContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfaceContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfaceContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfaceContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfaceContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfaceContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfaceContainer_get_SurfacePatches(This,PVal)	\
    (This)->lpVtbl -> get_SurfacePatches(This,PVal)

#define ISurfaceContainer_get_FaceRemovers(This,PVal)	\
    (This)->lpVtbl -> get_FaceRemovers(This,PVal)

#define ISurfaceContainer_get_SurfaceSewers(This,PVal)	\
    (This)->lpVtbl -> get_SurfaceSewers(This,PVal)

#define ISurfaceContainer_get_NurbsSurfaces(This,PVal)	\
    (This)->lpVtbl -> get_NurbsSurfaces(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceContainer_get_SurfacePatches_Proxy( 
    ISurfaceContainer __RPC_FAR * This,
    /* [retval][out] */ ISurfacePatches __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISurfaceContainer_get_SurfacePatches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceContainer_get_FaceRemovers_Proxy( 
    ISurfaceContainer __RPC_FAR * This,
    /* [retval][out] */ IFaceRemovers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISurfaceContainer_get_FaceRemovers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceContainer_get_SurfaceSewers_Proxy( 
    ISurfaceContainer __RPC_FAR * This,
    /* [retval][out] */ ISurfaceSewers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISurfaceContainer_get_SurfaceSewers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceContainer_get_NurbsSurfaces_Proxy( 
    ISurfaceContainer __RPC_FAR * This,
    /* [retval][out] */ INurbsSurfaces __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISurfaceContainer_get_NurbsSurfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfaceContainer_INTERFACE_DEFINED__ */


#ifndef __ISurfacePatches_INTERFACE_DEFINED__
#define __ISurfacePatches_INTERFACE_DEFINED__

/* interface ISurfacePatches */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfacePatches,0xDEE5B135,0x4D8E,0x4ad8,0xAE,0xA4,0xE7,0x63,0xF6,0x82,0x90,0xB2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DEE5B135-4D8E-4ad8-AEA4-E763F68290B2")
    ISurfacePatches : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfacePatch( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISurfacePatch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISurfacePatch __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfacePatchesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfacePatches __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfacePatches __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfacePatches __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfacePatches __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfacePatches __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfacePatches __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfacePatches __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISurfacePatches __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfacePatch )( 
            ISurfacePatches __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISurfacePatch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISurfacePatches __RPC_FAR * This,
            /* [retval][out] */ ISurfacePatch __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISurfacePatchesVtbl;

    interface ISurfacePatches
    {
        CONST_VTBL struct ISurfacePatchesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfacePatches_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfacePatches_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfacePatches_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfacePatches_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfacePatches_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfacePatches_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfacePatches_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfacePatches_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISurfacePatches_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISurfacePatches_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISurfacePatches_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISurfacePatches_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISurfacePatches_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISurfacePatches_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISurfacePatches_get_SurfacePatch(This,Index,Result)	\
    (This)->lpVtbl -> get_SurfacePatch(This,Index,Result)

#define ISurfacePatches_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacePatches_get_SurfacePatch_Proxy( 
    ISurfacePatches __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISurfacePatch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISurfacePatches_get_SurfacePatch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacePatches_Add_Proxy( 
    ISurfacePatches __RPC_FAR * This,
    /* [retval][out] */ ISurfacePatch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISurfacePatches_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfacePatches_INTERFACE_DEFINED__ */


#ifndef __ISurfacePatch_INTERFACE_DEFINED__
#define __ISurfacePatch_INTERFACE_DEFINED__

/* interface ISurfacePatch */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfacePatch,0xB6330040,0x7ABA,0x4ecd,0x8C,0x92,0x5B,0x44,0x1A,0xF1,0x1C,0x3B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B6330040-7ABA-4ecd-8C92-5B441AF11C3B")
    ISurfacePatch : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Edges( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Edges( 
            /* [in] */ VARIANT Points) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfacePatchVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfacePatch __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfacePatch __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfacePatch __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfacePatch __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfacePatch __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfacePatch __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfacePatch __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISurfacePatch __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISurfacePatch __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Edges )( 
            ISurfacePatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Edges )( 
            ISurfacePatch __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        END_INTERFACE
    } ISurfacePatchVtbl;

    interface ISurfacePatch
    {
        CONST_VTBL struct ISurfacePatchVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfacePatch_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfacePatch_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfacePatch_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfacePatch_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfacePatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfacePatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfacePatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfacePatch_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISurfacePatch_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISurfacePatch_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISurfacePatch_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISurfacePatch_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISurfacePatch_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISurfacePatch_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISurfacePatch_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISurfacePatch_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISurfacePatch_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISurfacePatch_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISurfacePatch_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISurfacePatch_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISurfacePatch_get_Edges(This,PVal)	\
    (This)->lpVtbl -> get_Edges(This,PVal)

#define ISurfacePatch_put_Edges(This,Points)	\
    (This)->lpVtbl -> put_Edges(This,Points)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacePatch_get_Edges_Proxy( 
    ISurfacePatch __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISurfacePatch_get_Edges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfacePatch_put_Edges_Proxy( 
    ISurfacePatch __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB ISurfacePatch_put_Edges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfacePatch_INTERFACE_DEFINED__ */


#ifndef __IFaceRemovers_INTERFACE_DEFINED__
#define __IFaceRemovers_INTERFACE_DEFINED__

/* interface IFaceRemovers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IFaceRemovers,0x6E177627,0x05D6,0x40b4,0xB9,0x55,0x92,0x03,0xF0,0x06,0x56,0xB5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6E177627-05D6-40b4-B955-9203F00656B5")
    IFaceRemovers : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FaceRemover( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IFaceRemover __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IFaceRemover __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFaceRemoversVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IFaceRemovers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IFaceRemovers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IFaceRemovers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IFaceRemovers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IFaceRemovers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IFaceRemovers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IFaceRemovers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IFaceRemovers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FaceRemover )( 
            IFaceRemovers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IFaceRemover __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IFaceRemovers __RPC_FAR * This,
            /* [retval][out] */ IFaceRemover __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IFaceRemoversVtbl;

    interface IFaceRemovers
    {
        CONST_VTBL struct IFaceRemoversVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IFaceRemovers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IFaceRemovers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IFaceRemovers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IFaceRemovers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IFaceRemovers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IFaceRemovers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IFaceRemovers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IFaceRemovers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IFaceRemovers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IFaceRemovers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IFaceRemovers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IFaceRemovers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IFaceRemovers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IFaceRemovers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IFaceRemovers_get_FaceRemover(This,Index,Result)	\
    (This)->lpVtbl -> get_FaceRemover(This,Index,Result)

#define IFaceRemovers_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFaceRemovers_get_FaceRemover_Proxy( 
    IFaceRemovers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IFaceRemover __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IFaceRemovers_get_FaceRemover_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IFaceRemovers_Add_Proxy( 
    IFaceRemovers __RPC_FAR * This,
    /* [retval][out] */ IFaceRemover __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IFaceRemovers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFaceRemovers_INTERFACE_DEFINED__ */


#ifndef __IFaceRemover_INTERFACE_DEFINED__
#define __IFaceRemover_INTERFACE_DEFINED__

/* interface IFaceRemover */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IFaceRemover,0x4CAE21E3,0x4183,0x47a6,0x94,0xB8,0x8A,0xD1,0x4D,0x57,0x75,0xEE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4CAE21E3-4183-47a6-94B8-8AD14D5775EE")
    IFaceRemover : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Faces( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Faces( 
            /* [in] */ VARIANT Points) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFaceRemoverVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IFaceRemover __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IFaceRemover __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IFaceRemover __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IFaceRemover __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IFaceRemover __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IFaceRemover __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IFaceRemover __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IFaceRemover __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IFaceRemover __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Faces )( 
            IFaceRemover __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Faces )( 
            IFaceRemover __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        END_INTERFACE
    } IFaceRemoverVtbl;

    interface IFaceRemover
    {
        CONST_VTBL struct IFaceRemoverVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IFaceRemover_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IFaceRemover_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IFaceRemover_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IFaceRemover_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IFaceRemover_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IFaceRemover_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IFaceRemover_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IFaceRemover_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IFaceRemover_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IFaceRemover_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IFaceRemover_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IFaceRemover_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IFaceRemover_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IFaceRemover_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IFaceRemover_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IFaceRemover_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IFaceRemover_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IFaceRemover_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IFaceRemover_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IFaceRemover_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IFaceRemover_get_Faces(This,PVal)	\
    (This)->lpVtbl -> get_Faces(This,PVal)

#define IFaceRemover_put_Faces(This,Points)	\
    (This)->lpVtbl -> put_Faces(This,Points)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IFaceRemover_get_Faces_Proxy( 
    IFaceRemover __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IFaceRemover_get_Faces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IFaceRemover_put_Faces_Proxy( 
    IFaceRemover __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB IFaceRemover_put_Faces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFaceRemover_INTERFACE_DEFINED__ */


#ifndef __ISurfaceSewers_INTERFACE_DEFINED__
#define __ISurfaceSewers_INTERFACE_DEFINED__

/* interface ISurfaceSewers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfaceSewers,0x70AE0BA0,0x2059,0x4eab,0xBE,0x41,0xA6,0xE8,0xC8,0xAC,0xFA,0x8A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("70AE0BA0-2059-4eab-BE41-A6E8C8ACFA8A")
    ISurfaceSewers : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfaceSewer( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISurfaceSewer __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISurfaceSewer __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfaceSewersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfaceSewers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfaceSewers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfaceSewer )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISurfaceSewer __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISurfaceSewers __RPC_FAR * This,
            /* [retval][out] */ ISurfaceSewer __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISurfaceSewersVtbl;

    interface ISurfaceSewers
    {
        CONST_VTBL struct ISurfaceSewersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfaceSewers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfaceSewers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfaceSewers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfaceSewers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfaceSewers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfaceSewers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfaceSewers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfaceSewers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISurfaceSewers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISurfaceSewers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISurfaceSewers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISurfaceSewers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISurfaceSewers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISurfaceSewers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISurfaceSewers_get_SurfaceSewer(This,Index,Result)	\
    (This)->lpVtbl -> get_SurfaceSewer(This,Index,Result)

#define ISurfaceSewers_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceSewers_get_SurfaceSewer_Proxy( 
    ISurfaceSewers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISurfaceSewer __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISurfaceSewers_get_SurfaceSewer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfaceSewers_Add_Proxy( 
    ISurfaceSewers __RPC_FAR * This,
    /* [retval][out] */ ISurfaceSewer __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISurfaceSewers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfaceSewers_INTERFACE_DEFINED__ */


#ifndef __ISurfaceSewer_INTERFACE_DEFINED__
#define __ISurfaceSewer_INTERFACE_DEFINED__

/* interface ISurfaceSewer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfaceSewer,0x031FD1C7,0x9CB6,0x4e49,0xA2,0x7D,0x73,0xB8,0xD0,0xB6,0x48,0xD4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("031FD1C7-9CB6-4e49-A27D-73B8D0B648D4")
    ISurfaceSewer : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Shells( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Shells( 
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Precision( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Precision( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CreateBody( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CreateBody( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfaceSewerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfaceSewer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfaceSewer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Shells )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Shells )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Precision )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Precision )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CreateBody )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CreateBody )( 
            ISurfaceSewer __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } ISurfaceSewerVtbl;

    interface ISurfaceSewer
    {
        CONST_VTBL struct ISurfaceSewerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfaceSewer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfaceSewer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfaceSewer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfaceSewer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfaceSewer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfaceSewer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfaceSewer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfaceSewer_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISurfaceSewer_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISurfaceSewer_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISurfaceSewer_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISurfaceSewer_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISurfaceSewer_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISurfaceSewer_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISurfaceSewer_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISurfaceSewer_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISurfaceSewer_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISurfaceSewer_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISurfaceSewer_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISurfaceSewer_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISurfaceSewer_get_Shells(This,PVal)	\
    (This)->lpVtbl -> get_Shells(This,PVal)

#define ISurfaceSewer_put_Shells(This,Points)	\
    (This)->lpVtbl -> put_Shells(This,Points)

#define ISurfaceSewer_get_Precision(This,Result)	\
    (This)->lpVtbl -> get_Precision(This,Result)

#define ISurfaceSewer_put_Precision(This,Value)	\
    (This)->lpVtbl -> put_Precision(This,Value)

#define ISurfaceSewer_get_CreateBody(This,Result)	\
    (This)->lpVtbl -> get_CreateBody(This,Result)

#define ISurfaceSewer_put_CreateBody(This,Value)	\
    (This)->lpVtbl -> put_CreateBody(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceSewer_get_Shells_Proxy( 
    ISurfaceSewer __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ISurfaceSewer_get_Shells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfaceSewer_put_Shells_Proxy( 
    ISurfaceSewer __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB ISurfaceSewer_put_Shells_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceSewer_get_Precision_Proxy( 
    ISurfaceSewer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ISurfaceSewer_get_Precision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfaceSewer_put_Precision_Proxy( 
    ISurfaceSewer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ISurfaceSewer_put_Precision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfaceSewer_get_CreateBody_Proxy( 
    ISurfaceSewer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISurfaceSewer_get_CreateBody_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfaceSewer_put_CreateBody_Proxy( 
    ISurfaceSewer __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ISurfaceSewer_put_CreateBody_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfaceSewer_INTERFACE_DEFINED__ */


#ifndef __INurbsSurfaces_INTERFACE_DEFINED__
#define __INurbsSurfaces_INTERFACE_DEFINED__

/* interface INurbsSurfaces */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_INurbsSurfaces,0xDB184867,0x6207,0x4fb7,0x9B,0x3F,0x88,0x2B,0xEA,0xA1,0x6B,0x4D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DB184867-6207-4fb7-9B3F-882BEAA16B4D")
    INurbsSurfaces : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NurbsSurface( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ INurbsSurface __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ INurbsSurface __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INurbsSurfacesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            INurbsSurfaces __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            INurbsSurfaces __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NurbsSurface )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ INurbsSurface __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            INurbsSurfaces __RPC_FAR * This,
            /* [retval][out] */ INurbsSurface __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } INurbsSurfacesVtbl;

    interface INurbsSurfaces
    {
        CONST_VTBL struct INurbsSurfacesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define INurbsSurfaces_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define INurbsSurfaces_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define INurbsSurfaces_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define INurbsSurfaces_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define INurbsSurfaces_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define INurbsSurfaces_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define INurbsSurfaces_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define INurbsSurfaces_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define INurbsSurfaces_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define INurbsSurfaces_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define INurbsSurfaces_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define INurbsSurfaces_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define INurbsSurfaces_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define INurbsSurfaces_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define INurbsSurfaces_get_NurbsSurface(This,Index,Result)	\
    (This)->lpVtbl -> get_NurbsSurface(This,Index,Result)

#define INurbsSurfaces_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbsSurfaces_get_NurbsSurface_Proxy( 
    INurbsSurfaces __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ INurbsSurface __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB INurbsSurfaces_get_NurbsSurface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurfaces_Add_Proxy( 
    INurbsSurfaces __RPC_FAR * This,
    /* [retval][out] */ INurbsSurface __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB INurbsSurfaces_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __INurbsSurfaces_INTERFACE_DEFINED__ */


#ifndef __INurbsSurface_INTERFACE_DEFINED__
#define __INurbsSurface_INTERFACE_DEFINED__

/* interface INurbsSurface */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_INurbsSurface,0x5DAFC690,0xB3A7,0x4771,0x8E,0x98,0xF8,0x3B,0x5B,0xF0,0xD4,0x54);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5DAFC690-B3A7-4771-8E98-F83B5BF0D454")
    INurbsSurface : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNurbsParams( 
            /* [in] */ VARIANT_BOOL ClosedV,
            /* [in] */ VARIANT_BOOL ClosedU,
            /* [out] */ long __RPC_FAR *DegreeV,
            /* [out] */ long __RPC_FAR *DegreeU,
            /* [out] */ long __RPC_FAR *NPV,
            /* [out] */ long __RPC_FAR *NPU,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [out] */ VARIANT __RPC_FAR *KnotsV,
            /* [out] */ VARIANT __RPC_FAR *KnotsU,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetNurbsParams( 
            /* [in] */ VARIANT_BOOL ClosedV,
            /* [in] */ VARIANT_BOOL ClosedU,
            /* [in] */ long DegreeV,
            /* [in] */ long DegreeU,
            /* [in] */ long NPV,
            /* [in] */ long NPU,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weights,
            /* [in] */ VARIANT KnotsV,
            /* [in] */ VARIANT KnotsU,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE InitParamByFace( 
            /* [in] */ IModelObject __RPC_FAR *Face,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClosedU( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClosedU( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClosedV( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClosedV( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BoundaryCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBoundary( 
            /* [in] */ VARIANT_BOOL UV,
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ long Degree,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weights,
            /* [in] */ VARIANT Knots,
            /* [in] */ double TMin,
            /* [in] */ double TMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBoundary( 
            /* [in] */ VARIANT_BOOL UV,
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ long BoundaryIndex,
            /* [out] */ long __RPC_FAR *Degree,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [out] */ VARIANT __RPC_FAR *Knots,
            /* [out] */ double __RPC_FAR *TMin,
            /* [out] */ double __RPC_FAR *TMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteBoundary( 
            /* [in] */ long BoundaryIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INurbsSurfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            INurbsSurface __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            INurbsSurface __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            INurbsSurface __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            INurbsSurface __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNurbsParams )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ClosedV,
            /* [in] */ VARIANT_BOOL ClosedU,
            /* [out] */ long __RPC_FAR *DegreeV,
            /* [out] */ long __RPC_FAR *DegreeU,
            /* [out] */ long __RPC_FAR *NPV,
            /* [out] */ long __RPC_FAR *NPU,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [out] */ VARIANT __RPC_FAR *KnotsV,
            /* [out] */ VARIANT __RPC_FAR *KnotsU,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetNurbsParams )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ClosedV,
            /* [in] */ VARIANT_BOOL ClosedU,
            /* [in] */ long DegreeV,
            /* [in] */ long DegreeU,
            /* [in] */ long NPV,
            /* [in] */ long NPU,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weights,
            /* [in] */ VARIANT KnotsV,
            /* [in] */ VARIANT KnotsU,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InitParamByFace )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *Face,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ClosedU )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ClosedU )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ClosedV )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ClosedV )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BoundaryCount )( 
            INurbsSurface __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBoundary )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL UV,
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ long Degree,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weights,
            /* [in] */ VARIANT Knots,
            /* [in] */ double TMin,
            /* [in] */ double TMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetBoundary )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL UV,
            /* [in] */ VARIANT_BOOL Closed,
            /* [in] */ long BoundaryIndex,
            /* [out] */ long __RPC_FAR *Degree,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [out] */ VARIANT __RPC_FAR *Knots,
            /* [out] */ double __RPC_FAR *TMin,
            /* [out] */ double __RPC_FAR *TMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteBoundary )( 
            INurbsSurface __RPC_FAR * This,
            /* [in] */ long BoundaryIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } INurbsSurfaceVtbl;

    interface INurbsSurface
    {
        CONST_VTBL struct INurbsSurfaceVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define INurbsSurface_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define INurbsSurface_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define INurbsSurface_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define INurbsSurface_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define INurbsSurface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define INurbsSurface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define INurbsSurface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define INurbsSurface_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define INurbsSurface_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define INurbsSurface_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define INurbsSurface_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define INurbsSurface_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define INurbsSurface_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define INurbsSurface_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define INurbsSurface_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define INurbsSurface_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define INurbsSurface_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define INurbsSurface_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define INurbsSurface_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define INurbsSurface_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define INurbsSurface_GetNurbsParams(This,ClosedV,ClosedU,DegreeV,DegreeU,NPV,NPU,Points,Weights,KnotsV,KnotsU,Result)	\
    (This)->lpVtbl -> GetNurbsParams(This,ClosedV,ClosedU,DegreeV,DegreeU,NPV,NPU,Points,Weights,KnotsV,KnotsU,Result)

#define INurbsSurface_SetNurbsParams(This,ClosedV,ClosedU,DegreeV,DegreeU,NPV,NPU,Points,Weights,KnotsV,KnotsU,Result)	\
    (This)->lpVtbl -> SetNurbsParams(This,ClosedV,ClosedU,DegreeV,DegreeU,NPV,NPU,Points,Weights,KnotsV,KnotsU,Result)

#define INurbsSurface_InitParamByFace(This,Face,PVal)	\
    (This)->lpVtbl -> InitParamByFace(This,Face,PVal)

#define INurbsSurface_get_ClosedU(This,PVal)	\
    (This)->lpVtbl -> get_ClosedU(This,PVal)

#define INurbsSurface_put_ClosedU(This,Val)	\
    (This)->lpVtbl -> put_ClosedU(This,Val)

#define INurbsSurface_get_ClosedV(This,PVal)	\
    (This)->lpVtbl -> get_ClosedV(This,PVal)

#define INurbsSurface_put_ClosedV(This,Val)	\
    (This)->lpVtbl -> put_ClosedV(This,Val)

#define INurbsSurface_get_BoundaryCount(This,PVal)	\
    (This)->lpVtbl -> get_BoundaryCount(This,PVal)

#define INurbsSurface_AddBoundary(This,UV,Closed,Degree,Points,Weights,Knots,TMin,TMax,Result)	\
    (This)->lpVtbl -> AddBoundary(This,UV,Closed,Degree,Points,Weights,Knots,TMin,TMax,Result)

#define INurbsSurface_GetBoundary(This,UV,Closed,BoundaryIndex,Degree,Points,Weights,Knots,TMin,TMax,Result)	\
    (This)->lpVtbl -> GetBoundary(This,UV,Closed,BoundaryIndex,Degree,Points,Weights,Knots,TMin,TMax,Result)

#define INurbsSurface_DeleteBoundary(This,BoundaryIndex,PVal)	\
    (This)->lpVtbl -> DeleteBoundary(This,BoundaryIndex,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurface_GetNurbsParams_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ClosedV,
    /* [in] */ VARIANT_BOOL ClosedU,
    /* [out] */ long __RPC_FAR *DegreeV,
    /* [out] */ long __RPC_FAR *DegreeU,
    /* [out] */ long __RPC_FAR *NPV,
    /* [out] */ long __RPC_FAR *NPU,
    /* [out] */ VARIANT __RPC_FAR *Points,
    /* [out] */ VARIANT __RPC_FAR *Weights,
    /* [out] */ VARIANT __RPC_FAR *KnotsV,
    /* [out] */ VARIANT __RPC_FAR *KnotsU,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbsSurface_GetNurbsParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurface_SetNurbsParams_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ClosedV,
    /* [in] */ VARIANT_BOOL ClosedU,
    /* [in] */ long DegreeV,
    /* [in] */ long DegreeU,
    /* [in] */ long NPV,
    /* [in] */ long NPU,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Weights,
    /* [in] */ VARIANT KnotsV,
    /* [in] */ VARIANT KnotsU,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbsSurface_SetNurbsParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurface_InitParamByFace_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *Face,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB INurbsSurface_InitParamByFace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbsSurface_get_ClosedU_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB INurbsSurface_get_ClosedU_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE INurbsSurface_put_ClosedU_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB INurbsSurface_put_ClosedU_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbsSurface_get_ClosedV_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB INurbsSurface_get_ClosedV_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE INurbsSurface_put_ClosedV_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB INurbsSurface_put_ClosedV_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbsSurface_get_BoundaryCount_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB INurbsSurface_get_BoundaryCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurface_AddBoundary_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL UV,
    /* [in] */ VARIANT_BOOL Closed,
    /* [in] */ long Degree,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Weights,
    /* [in] */ VARIANT Knots,
    /* [in] */ double TMin,
    /* [in] */ double TMax,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbsSurface_AddBoundary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurface_GetBoundary_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL UV,
    /* [in] */ VARIANT_BOOL Closed,
    /* [in] */ long BoundaryIndex,
    /* [out] */ long __RPC_FAR *Degree,
    /* [out] */ VARIANT __RPC_FAR *Points,
    /* [out] */ VARIANT __RPC_FAR *Weights,
    /* [out] */ VARIANT __RPC_FAR *Knots,
    /* [out] */ double __RPC_FAR *TMin,
    /* [out] */ double __RPC_FAR *TMax,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbsSurface_GetBoundary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbsSurface_DeleteBoundary_Proxy( 
    INurbsSurface __RPC_FAR * This,
    /* [in] */ long BoundaryIndex,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB INurbsSurface_DeleteBoundary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __INurbsSurface_INTERFACE_DEFINED__ */


#ifndef __IColorParam7_INTERFACE_DEFINED__
#define __IColorParam7_INTERFACE_DEFINED__

/* interface IColorParam7 */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IColorParam7,0xBE6A80EE,0x38FE,0x4432,0x83,0x31,0xBF,0x86,0x48,0x30,0x76,0x1C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BE6A80EE-38FE-4432-8331-BF864830761C")
    IColorParam7 : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UseColor( 
            /* [retval][out] */ /* external definition not present */ ksUseColorEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UseColor( 
            /* [in] */ /* external definition not present */ ksUseColorEnum PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ long PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Ambient( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Ambient( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Diffuse( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Diffuse( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Specularity( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Specularity( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Shininess( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Shininess( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Transparency( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Transparency( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Emission( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Emission( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAdvancedColor( 
            /* [out] */ long __RPC_FAR *Color,
            /* [out] */ double __RPC_FAR *Ambient,
            /* [out] */ double __RPC_FAR *Diffuse,
            /* [out] */ double __RPC_FAR *Specularity,
            /* [out] */ double __RPC_FAR *Shininess,
            /* [out] */ double __RPC_FAR *Transparency,
            /* [out] */ double __RPC_FAR *Emission,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAdvancedColor( 
            /* [in] */ long Color,
            /* [in] */ double Ambient,
            /* [in] */ double Diffuse,
            /* [in] */ double Specularity,
            /* [in] */ double Shininess,
            /* [in] */ double Transparency,
            /* [in] */ double Emission,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IColorParam7Vtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IColorParam7 __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IColorParam7 __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IColorParam7 __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UseColor )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksUseColorEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UseColor )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksUseColorEnum PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Ambient )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Ambient )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Diffuse )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Diffuse )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Specularity )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Specularity )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Shininess )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Shininess )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Transparency )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Transparency )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Emission )( 
            IColorParam7 __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Emission )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAdvancedColor )( 
            IColorParam7 __RPC_FAR * This,
            /* [out] */ long __RPC_FAR *Color,
            /* [out] */ double __RPC_FAR *Ambient,
            /* [out] */ double __RPC_FAR *Diffuse,
            /* [out] */ double __RPC_FAR *Specularity,
            /* [out] */ double __RPC_FAR *Shininess,
            /* [out] */ double __RPC_FAR *Transparency,
            /* [out] */ double __RPC_FAR *Emission,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAdvancedColor )( 
            IColorParam7 __RPC_FAR * This,
            /* [in] */ long Color,
            /* [in] */ double Ambient,
            /* [in] */ double Diffuse,
            /* [in] */ double Specularity,
            /* [in] */ double Shininess,
            /* [in] */ double Transparency,
            /* [in] */ double Emission,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IColorParam7Vtbl;

    interface IColorParam7
    {
        CONST_VTBL struct IColorParam7Vtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IColorParam7_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IColorParam7_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IColorParam7_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IColorParam7_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IColorParam7_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IColorParam7_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IColorParam7_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IColorParam7_get_UseColor(This,PVal)	\
    (This)->lpVtbl -> get_UseColor(This,PVal)

#define IColorParam7_put_UseColor(This,PVal)	\
    (This)->lpVtbl -> put_UseColor(This,PVal)

#define IColorParam7_get_Color(This,PVal)	\
    (This)->lpVtbl -> get_Color(This,PVal)

#define IColorParam7_put_Color(This,PVal)	\
    (This)->lpVtbl -> put_Color(This,PVal)

#define IColorParam7_get_Ambient(This,PVal)	\
    (This)->lpVtbl -> get_Ambient(This,PVal)

#define IColorParam7_put_Ambient(This,PVal)	\
    (This)->lpVtbl -> put_Ambient(This,PVal)

#define IColorParam7_get_Diffuse(This,PVal)	\
    (This)->lpVtbl -> get_Diffuse(This,PVal)

#define IColorParam7_put_Diffuse(This,PVal)	\
    (This)->lpVtbl -> put_Diffuse(This,PVal)

#define IColorParam7_get_Specularity(This,PVal)	\
    (This)->lpVtbl -> get_Specularity(This,PVal)

#define IColorParam7_put_Specularity(This,PVal)	\
    (This)->lpVtbl -> put_Specularity(This,PVal)

#define IColorParam7_get_Shininess(This,PVal)	\
    (This)->lpVtbl -> get_Shininess(This,PVal)

#define IColorParam7_put_Shininess(This,PVal)	\
    (This)->lpVtbl -> put_Shininess(This,PVal)

#define IColorParam7_get_Transparency(This,PVal)	\
    (This)->lpVtbl -> get_Transparency(This,PVal)

#define IColorParam7_put_Transparency(This,PVal)	\
    (This)->lpVtbl -> put_Transparency(This,PVal)

#define IColorParam7_get_Emission(This,PVal)	\
    (This)->lpVtbl -> get_Emission(This,PVal)

#define IColorParam7_put_Emission(This,PVal)	\
    (This)->lpVtbl -> put_Emission(This,PVal)

#define IColorParam7_GetAdvancedColor(This,Color,Ambient,Diffuse,Specularity,Shininess,Transparency,Emission,Result)	\
    (This)->lpVtbl -> GetAdvancedColor(This,Color,Ambient,Diffuse,Specularity,Shininess,Transparency,Emission,Result)

#define IColorParam7_SetAdvancedColor(This,Color,Ambient,Diffuse,Specularity,Shininess,Transparency,Emission,Result)	\
    (This)->lpVtbl -> SetAdvancedColor(This,Color,Ambient,Diffuse,Specularity,Shininess,Transparency,Emission,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_UseColor_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksUseColorEnum __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_UseColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_UseColor_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksUseColorEnum PVal);


void __RPC_STUB IColorParam7_put_UseColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Color_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Color_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ long PVal);


void __RPC_STUB IColorParam7_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Ambient_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Ambient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Ambient_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IColorParam7_put_Ambient_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Diffuse_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Diffuse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Diffuse_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IColorParam7_put_Diffuse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Specularity_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Specularity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Specularity_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IColorParam7_put_Specularity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Shininess_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Shininess_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Shininess_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IColorParam7_put_Shininess_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Transparency_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Transparency_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Transparency_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IColorParam7_put_Transparency_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColorParam7_get_Emission_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IColorParam7_get_Emission_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColorParam7_put_Emission_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IColorParam7_put_Emission_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColorParam7_GetAdvancedColor_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [out] */ long __RPC_FAR *Color,
    /* [out] */ double __RPC_FAR *Ambient,
    /* [out] */ double __RPC_FAR *Diffuse,
    /* [out] */ double __RPC_FAR *Specularity,
    /* [out] */ double __RPC_FAR *Shininess,
    /* [out] */ double __RPC_FAR *Transparency,
    /* [out] */ double __RPC_FAR *Emission,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColorParam7_GetAdvancedColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColorParam7_SetAdvancedColor_Proxy( 
    IColorParam7 __RPC_FAR * This,
    /* [in] */ long Color,
    /* [in] */ double Ambient,
    /* [in] */ double Diffuse,
    /* [in] */ double Specularity,
    /* [in] */ double Shininess,
    /* [in] */ double Transparency,
    /* [in] */ double Emission,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColorParam7_SetAdvancedColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IColorParam7_INTERFACE_DEFINED__ */


#ifndef __ISurfacesIntersectionCurve_INTERFACE_DEFINED__
#define __ISurfacesIntersectionCurve_INTERFACE_DEFINED__

/* interface ISurfacesIntersectionCurve */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfacesIntersectionCurve,0x758420A0,0xBECB,0x4fda,0xBD,0xDE,0x1F,0x39,0x8B,0x41,0x11,0x7C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("758420A0-BECB-4fda-BDDE-1F398B41117C")
    ISurfacesIntersectionCurve : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetObjects( 
            /* [in] */ VARIANT ObjectsArray1,
            /* [in] */ VARIANT ObjectsArray2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetObjects( 
            /* [out] */ VARIANT __RPC_FAR *ObjectsArray1,
            /* [out] */ VARIANT __RPC_FAR *ObjectsArray2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddObjects( 
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectsCount( 
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetObject( 
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [in] */ long Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoCheck( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *CheckValue) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoCheck( 
            /* [in] */ VARIANT_BOOL CheckValue) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EdgesChecks( 
            /* [retval][out] */ VARIANT __RPC_FAR *Checks) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EdgesChecks( 
            /* [in] */ VARIANT Checks) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EdgesArraysCount( 
            /* [retval][out] */ long __RPC_FAR *Count) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Edges( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *Edges) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EdgesCheck( 
            /* [in] */ long EdgesArrayIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *CheckValue) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EdgesCheck( 
            /* [in] */ long EdgesArrayIndex,
            /* [in] */ VARIANT_BOOL CheckValue) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfacesIntersectionCurveVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfacesIntersectionCurve __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfacesIntersectionCurve __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetObjects )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT ObjectsArray1,
            /* [in] */ VARIANT ObjectsArray2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjects )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *ObjectsArray1,
            /* [out] */ VARIANT __RPC_FAR *ObjectsArray2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddObjects )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectsCount )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObject )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL ForArray1,
            /* [in] */ long Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoCheck )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *CheckValue);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoCheck )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL CheckValue);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EdgesChecks )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Checks);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EdgesChecks )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ VARIANT Checks);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EdgesArraysCount )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Count);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Edges )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *Edges);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EdgesCheck )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ long EdgesArrayIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *CheckValue);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EdgesCheck )( 
            ISurfacesIntersectionCurve __RPC_FAR * This,
            /* [in] */ long EdgesArrayIndex,
            /* [in] */ VARIANT_BOOL CheckValue);
        
        END_INTERFACE
    } ISurfacesIntersectionCurveVtbl;

    interface ISurfacesIntersectionCurve
    {
        CONST_VTBL struct ISurfacesIntersectionCurveVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfacesIntersectionCurve_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfacesIntersectionCurve_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfacesIntersectionCurve_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfacesIntersectionCurve_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfacesIntersectionCurve_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfacesIntersectionCurve_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfacesIntersectionCurve_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfacesIntersectionCurve_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISurfacesIntersectionCurve_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISurfacesIntersectionCurve_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISurfacesIntersectionCurve_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISurfacesIntersectionCurve_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define ISurfacesIntersectionCurve_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define ISurfacesIntersectionCurve_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define ISurfacesIntersectionCurve_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define ISurfacesIntersectionCurve_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define ISurfacesIntersectionCurve_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define ISurfacesIntersectionCurve_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define ISurfacesIntersectionCurve_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define ISurfacesIntersectionCurve_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define ISurfacesIntersectionCurve_SetObjects(This,ObjectsArray1,ObjectsArray2,Result)	\
    (This)->lpVtbl -> SetObjects(This,ObjectsArray1,ObjectsArray2,Result)

#define ISurfacesIntersectionCurve_GetObjects(This,ObjectsArray1,ObjectsArray2,Result)	\
    (This)->lpVtbl -> GetObjects(This,ObjectsArray1,ObjectsArray2,Result)

#define ISurfacesIntersectionCurve_AddObjects(This,ForArray1,Objects,Result)	\
    (This)->lpVtbl -> AddObjects(This,ForArray1,Objects,Result)

#define ISurfacesIntersectionCurve_Clear(This,ForArray1,Result)	\
    (This)->lpVtbl -> Clear(This,ForArray1,Result)

#define ISurfacesIntersectionCurve_get_ObjectsCount(This,ForArray1,Count)	\
    (This)->lpVtbl -> get_ObjectsCount(This,ForArray1,Count)

#define ISurfacesIntersectionCurve_GetObject(This,ForArray1,Index,Object)	\
    (This)->lpVtbl -> GetObject(This,ForArray1,Index,Object)

#define ISurfacesIntersectionCurve_get_AutoCheck(This,CheckValue)	\
    (This)->lpVtbl -> get_AutoCheck(This,CheckValue)

#define ISurfacesIntersectionCurve_put_AutoCheck(This,CheckValue)	\
    (This)->lpVtbl -> put_AutoCheck(This,CheckValue)

#define ISurfacesIntersectionCurve_get_EdgesChecks(This,Checks)	\
    (This)->lpVtbl -> get_EdgesChecks(This,Checks)

#define ISurfacesIntersectionCurve_put_EdgesChecks(This,Checks)	\
    (This)->lpVtbl -> put_EdgesChecks(This,Checks)

#define ISurfacesIntersectionCurve_get_EdgesArraysCount(This,Count)	\
    (This)->lpVtbl -> get_EdgesArraysCount(This,Count)

#define ISurfacesIntersectionCurve_get_Edges(This,Index,Edges)	\
    (This)->lpVtbl -> get_Edges(This,Index,Edges)

#define ISurfacesIntersectionCurve_get_EdgesCheck(This,EdgesArrayIndex,CheckValue)	\
    (This)->lpVtbl -> get_EdgesCheck(This,EdgesArrayIndex,CheckValue)

#define ISurfacesIntersectionCurve_put_EdgesCheck(This,EdgesArrayIndex,CheckValue)	\
    (This)->lpVtbl -> put_EdgesCheck(This,EdgesArrayIndex,CheckValue)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_SetObjects_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT ObjectsArray1,
    /* [in] */ VARIANT ObjectsArray2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISurfacesIntersectionCurve_SetObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_GetObjects_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *ObjectsArray1,
    /* [out] */ VARIANT __RPC_FAR *ObjectsArray2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISurfacesIntersectionCurve_GetObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_AddObjects_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ForArray1,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISurfacesIntersectionCurve_AddObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_Clear_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ForArray1,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISurfacesIntersectionCurve_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_get_ObjectsCount_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ForArray1,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB ISurfacesIntersectionCurve_get_ObjectsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_GetObject_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL ForArray1,
    /* [in] */ long Index,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Object);


void __RPC_STUB ISurfacesIntersectionCurve_GetObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_get_AutoCheck_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *CheckValue);


void __RPC_STUB ISurfacesIntersectionCurve_get_AutoCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_put_AutoCheck_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL CheckValue);


void __RPC_STUB ISurfacesIntersectionCurve_put_AutoCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_get_EdgesChecks_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Checks);


void __RPC_STUB ISurfacesIntersectionCurve_get_EdgesChecks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_put_EdgesChecks_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ VARIANT Checks);


void __RPC_STUB ISurfacesIntersectionCurve_put_EdgesChecks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_get_EdgesArraysCount_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Count);


void __RPC_STUB ISurfacesIntersectionCurve_get_EdgesArraysCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_get_Edges_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT __RPC_FAR *Edges);


void __RPC_STUB ISurfacesIntersectionCurve_get_Edges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_get_EdgesCheck_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ long EdgesArrayIndex,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *CheckValue);


void __RPC_STUB ISurfacesIntersectionCurve_get_EdgesCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurve_put_EdgesCheck_Proxy( 
    ISurfacesIntersectionCurve __RPC_FAR * This,
    /* [in] */ long EdgesArrayIndex,
    /* [in] */ VARIANT_BOOL CheckValue);


void __RPC_STUB ISurfacesIntersectionCurve_put_EdgesCheck_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfacesIntersectionCurve_INTERFACE_DEFINED__ */


#ifndef __ISurfacesIntersectionCurves_INTERFACE_DEFINED__
#define __ISurfacesIntersectionCurves_INTERFACE_DEFINED__

/* interface ISurfacesIntersectionCurves */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISurfacesIntersectionCurves,0x453E0E34,0x4D2D,0x47b2,0x8E,0x95,0xEB,0x05,0xC7,0x31,0x96,0x1D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("453E0E34-4D2D-47b2-8E95-EB05C731961D")
    ISurfacesIntersectionCurves : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SurfacesIntersectionCurve( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISurfacesIntersectionCurve __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ISurfacesIntersectionCurve __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISurfacesIntersectionCurvesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISurfacesIntersectionCurves __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISurfacesIntersectionCurves __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SurfacesIntersectionCurve )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ISurfacesIntersectionCurve __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ISurfacesIntersectionCurves __RPC_FAR * This,
            /* [retval][out] */ ISurfacesIntersectionCurve __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ISurfacesIntersectionCurvesVtbl;

    interface ISurfacesIntersectionCurves
    {
        CONST_VTBL struct ISurfacesIntersectionCurvesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISurfacesIntersectionCurves_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISurfacesIntersectionCurves_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISurfacesIntersectionCurves_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISurfacesIntersectionCurves_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISurfacesIntersectionCurves_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISurfacesIntersectionCurves_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISurfacesIntersectionCurves_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISurfacesIntersectionCurves_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISurfacesIntersectionCurves_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISurfacesIntersectionCurves_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISurfacesIntersectionCurves_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISurfacesIntersectionCurves_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ISurfacesIntersectionCurves_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ISurfacesIntersectionCurves_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ISurfacesIntersectionCurves_get_SurfacesIntersectionCurve(This,Index,Result)	\
    (This)->lpVtbl -> get_SurfacesIntersectionCurve(This,Index,Result)

#define ISurfacesIntersectionCurves_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurves_get_SurfacesIntersectionCurve_Proxy( 
    ISurfacesIntersectionCurves __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ISurfacesIntersectionCurve __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISurfacesIntersectionCurves_get_SurfacesIntersectionCurve_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISurfacesIntersectionCurves_Add_Proxy( 
    ISurfacesIntersectionCurves __RPC_FAR * This,
    /* [retval][out] */ ISurfacesIntersectionCurve __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ISurfacesIntersectionCurves_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISurfacesIntersectionCurves_INTERFACE_DEFINED__ */


#ifndef __IEquidistants3D_INTERFACE_DEFINED__
#define __IEquidistants3D_INTERFACE_DEFINED__

/* interface IEquidistants3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEquidistants3D,0x8B94F332,0xEEFD,0x4610,0x9C,0x55,0x20,0xA1,0xF7,0x33,0x61,0x22);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8B94F332-EEFD-4610-9C55-20A1F7336122")
    IEquidistants3D : public IModelObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Equidistant3D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEquidistant3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IEquidistant3D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEquidistants3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEquidistants3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEquidistants3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEquidistants3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEquidistants3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEquidistants3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEquidistants3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEquidistants3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IEquidistants3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Equidistant3D )( 
            IEquidistants3D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEquidistant3D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IEquidistants3D __RPC_FAR * This,
            /* [retval][out] */ IEquidistant3D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IEquidistants3DVtbl;

    interface IEquidistants3D
    {
        CONST_VTBL struct IEquidistants3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEquidistants3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEquidistants3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEquidistants3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEquidistants3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEquidistants3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEquidistants3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEquidistants3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEquidistants3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEquidistants3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEquidistants3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEquidistants3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEquidistants3D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IEquidistants3D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IEquidistants3D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IEquidistants3D_get_Equidistant3D(This,Index,Result)	\
    (This)->lpVtbl -> get_Equidistant3D(This,Index,Result)

#define IEquidistants3D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistants3D_get_Equidistant3D_Proxy( 
    IEquidistants3D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IEquidistant3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEquidistants3D_get_Equidistant3D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IEquidistants3D_Add_Proxy( 
    IEquidistants3D __RPC_FAR * This,
    /* [retval][out] */ IEquidistant3D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEquidistants3D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEquidistants3D_INTERFACE_DEFINED__ */


#ifndef __IEquidistant3D_INTERFACE_DEFINED__
#define __IEquidistant3D_INTERFACE_DEFINED__

/* interface IEquidistant3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEquidistant3D,0xC25DDBF4,0x3CC1,0x467d,0xB9,0x96,0xE3,0x0E,0xD4,0xD5,0x29,0xB6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C25DDBF4-3CC1-467d-B996-E30ED4D529B6")
    IEquidistant3D : public IModelObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Edges( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Edges( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OnFace( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OnFace( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IModelObject __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Distance( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Distance( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CutMode( 
            /* [in] */ /* external definition not present */ ksEquidistant3DCutModeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutMode( 
            /* [retval][out] */ /* external definition not present */ ksEquidistant3DCutModeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_KeepRadius( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_KeepRadius( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DirFromBegin( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DirFromBegin( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEquidistant3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEquidistant3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEquidistant3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEquidistant3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hidden )( 
            IEquidistant3D __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hidden )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Part )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ IPart7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ModelObjectType )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksObj3dTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Owner )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ IFeature7 __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Edges )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Edges )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OnFace )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OnFace )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ IModelObject __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Distance )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Distance )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CutMode )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksEquidistant3DCutModeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutMode )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksEquidistant3DCutModeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_KeepRadius )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_KeepRadius )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DirFromBegin )( 
            IEquidistant3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DirFromBegin )( 
            IEquidistant3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IEquidistant3DVtbl;

    interface IEquidistant3D
    {
        CONST_VTBL struct IEquidistant3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEquidistant3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEquidistant3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEquidistant3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEquidistant3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEquidistant3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEquidistant3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEquidistant3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEquidistant3D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEquidistant3D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEquidistant3D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEquidistant3D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEquidistant3D_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IEquidistant3D_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IEquidistant3D_put_Hidden(This,NewVal)	\
    (This)->lpVtbl -> put_Hidden(This,NewVal)

#define IEquidistant3D_get_Hidden(This,PVal)	\
    (This)->lpVtbl -> get_Hidden(This,PVal)

#define IEquidistant3D_Update(This,PVal)	\
    (This)->lpVtbl -> Update(This,PVal)

#define IEquidistant3D_get_Valid(This,PVal)	\
    (This)->lpVtbl -> get_Valid(This,PVal)

#define IEquidistant3D_get_Part(This,Result)	\
    (This)->lpVtbl -> get_Part(This,Result)

#define IEquidistant3D_get_ModelObjectType(This,Type)	\
    (This)->lpVtbl -> get_ModelObjectType(This,Type)

#define IEquidistant3D_get_Owner(This,PVal)	\
    (This)->lpVtbl -> get_Owner(This,PVal)


#define IEquidistant3D_get_Edges(This,PVal)	\
    (This)->lpVtbl -> get_Edges(This,PVal)

#define IEquidistant3D_put_Edges(This,NewVal)	\
    (This)->lpVtbl -> put_Edges(This,NewVal)

#define IEquidistant3D_put_OnFace(This,NewVal)	\
    (This)->lpVtbl -> put_OnFace(This,NewVal)

#define IEquidistant3D_get_OnFace(This,PVal)	\
    (This)->lpVtbl -> get_OnFace(This,PVal)

#define IEquidistant3D_get_BaseObject(This,Result)	\
    (This)->lpVtbl -> get_BaseObject(This,Result)

#define IEquidistant3D_put_BaseObject(This,NewVal)	\
    (This)->lpVtbl -> put_BaseObject(This,NewVal)

#define IEquidistant3D_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IEquidistant3D_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IEquidistant3D_put_Distance(This,NewVal)	\
    (This)->lpVtbl -> put_Distance(This,NewVal)

#define IEquidistant3D_get_Distance(This,PVal)	\
    (This)->lpVtbl -> get_Distance(This,PVal)

#define IEquidistant3D_put_CutMode(This,NewVal)	\
    (This)->lpVtbl -> put_CutMode(This,NewVal)

#define IEquidistant3D_get_CutMode(This,PVal)	\
    (This)->lpVtbl -> get_CutMode(This,PVal)

#define IEquidistant3D_put_KeepRadius(This,NewVal)	\
    (This)->lpVtbl -> put_KeepRadius(This,NewVal)

#define IEquidistant3D_get_KeepRadius(This,PVal)	\
    (This)->lpVtbl -> get_KeepRadius(This,PVal)

#define IEquidistant3D_put_DirFromBegin(This,NewVal)	\
    (This)->lpVtbl -> put_DirFromBegin(This,NewVal)

#define IEquidistant3D_get_DirFromBegin(This,PVal)	\
    (This)->lpVtbl -> get_DirFromBegin(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_Edges_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_Edges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_Edges_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB IEquidistant3D_put_Edges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_OnFace_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IEquidistant3D_put_OnFace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_OnFace_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_OnFace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_BaseObject_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ IModelObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEquidistant3D_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_BaseObject_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ IModelObject __RPC_FAR *NewVal);


void __RPC_STUB IEquidistant3D_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_Angle_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEquidistant3D_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_Angle_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_Distance_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEquidistant3D_put_Distance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_Distance_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_Distance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_CutMode_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksEquidistant3DCutModeEnum NewVal);


void __RPC_STUB IEquidistant3D_put_CutMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_CutMode_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksEquidistant3DCutModeEnum __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_CutMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_KeepRadius_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IEquidistant3D_put_KeepRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_KeepRadius_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_KeepRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_put_DirFromBegin_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IEquidistant3D_put_DirFromBegin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant3D_get_DirFromBegin_Proxy( 
    IEquidistant3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IEquidistant3D_get_DirFromBegin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEquidistant3D_INTERFACE_DEFINED__ */


#ifndef __IDrawingText_INTERFACE_DEFINED__
#define __IDrawingText_INTERFACE_DEFINED__

/* interface IDrawingText */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingText,0xE32E5703,0x0141,0x41cf,0x99,0x17,0x95,0x65,0x64,0x8F,0xE3,0x31);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E32E5703-0141-41cf-9917-9565648FE331")
    IDrawingText : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HFormat( 
            /* [retval][out] */ /* external definition not present */ ksTextHorizontalFormatEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HFormat( 
            /* [in] */ /* external definition not present */ ksTextHorizontalFormatEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VFormat( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VFormat( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Allocation( 
            /* [retval][out] */ /* external definition not present */ ksAllocationEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Allocation( 
            /* [in] */ /* external definition not present */ ksAllocationEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingTextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingText __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingText __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingText __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HFormat )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTextHorizontalFormatEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HFormat )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTextHorizontalFormatEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VFormat )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VFormat )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Allocation )( 
            IDrawingText __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAllocationEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Allocation )( 
            IDrawingText __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAllocationEnum Value);
        
        END_INTERFACE
    } IDrawingTextVtbl;

    interface IDrawingText
    {
        CONST_VTBL struct IDrawingTextVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingText_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingText_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingText_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingText_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingText_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingText_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingText_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingText_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingText_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingText_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingText_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingText_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IDrawingText_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IDrawingText_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IDrawingText_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IDrawingText_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IDrawingText_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IDrawingText_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IDrawingText_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IDrawingText_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IDrawingText_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IDrawingText_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IDrawingText_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IDrawingText_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IDrawingText_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IDrawingText_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IDrawingText_get_Height(This,Result)	\
    (This)->lpVtbl -> get_Height(This,Result)

#define IDrawingText_put_Height(This,Value)	\
    (This)->lpVtbl -> put_Height(This,Value)

#define IDrawingText_get_Width(This,Result)	\
    (This)->lpVtbl -> get_Width(This,Result)

#define IDrawingText_put_Width(This,Value)	\
    (This)->lpVtbl -> put_Width(This,Value)

#define IDrawingText_get_HFormat(This,Result)	\
    (This)->lpVtbl -> get_HFormat(This,Result)

#define IDrawingText_put_HFormat(This,Value)	\
    (This)->lpVtbl -> put_HFormat(This,Value)

#define IDrawingText_get_VFormat(This,Result)	\
    (This)->lpVtbl -> get_VFormat(This,Result)

#define IDrawingText_put_VFormat(This,Value)	\
    (This)->lpVtbl -> put_VFormat(This,Value)

#define IDrawingText_get_Allocation(This,Result)	\
    (This)->lpVtbl -> get_Allocation(This,Result)

#define IDrawingText_put_Allocation(This,Value)	\
    (This)->lpVtbl -> put_Allocation(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_X_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_X_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDrawingText_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_Y_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_Y_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDrawingText_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_Angle_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IDrawingText_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_Angle_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDrawingText_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_Height_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_Height_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDrawingText_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_Width_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_Width_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDrawingText_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_HFormat_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTextHorizontalFormatEnum __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_HFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_HFormat_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTextHorizontalFormatEnum Value);


void __RPC_STUB IDrawingText_put_HFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_VFormat_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_VFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_VFormat_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDrawingText_put_VFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingText_get_Allocation_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAllocationEnum __RPC_FAR *Result);


void __RPC_STUB IDrawingText_get_Allocation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingText_put_Allocation_Proxy( 
    IDrawingText __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAllocationEnum Value);


void __RPC_STUB IDrawingText_put_Allocation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingText_INTERFACE_DEFINED__ */


#ifndef __IDrawingTexts_INTERFACE_DEFINED__
#define __IDrawingTexts_INTERFACE_DEFINED__

/* interface IDrawingTexts */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingTexts,0xC72E0E9D,0x7078,0x4aa7,0x95,0xE4,0xE8,0xC7,0x5C,0xA9,0xBC,0xEC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C72E0E9D-7078-4aa7-95E4-E8C75CA9BCEC")
    IDrawingTexts : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingText( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingText __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IDrawingText __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingTextsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingTexts __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingTexts __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingTexts __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingTexts __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingTexts __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingTexts __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingTexts __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDrawingTexts __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingText )( 
            IDrawingTexts __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingText __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDrawingTexts __RPC_FAR * This,
            /* [retval][out] */ IDrawingText __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IDrawingTextsVtbl;

    interface IDrawingTexts
    {
        CONST_VTBL struct IDrawingTextsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingTexts_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingTexts_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingTexts_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingTexts_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingTexts_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingTexts_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingTexts_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingTexts_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingTexts_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingTexts_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingTexts_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingTexts_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDrawingTexts_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDrawingTexts_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IDrawingTexts_get_DrawingText(This,Index,Result)	\
    (This)->lpVtbl -> get_DrawingText(This,Index,Result)

#define IDrawingTexts_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTexts_get_DrawingText_Proxy( 
    IDrawingTexts __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDrawingText __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingTexts_get_DrawingText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingTexts_Add_Proxy( 
    IDrawingTexts __RPC_FAR * This,
    /* [retval][out] */ IDrawingText __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IDrawingTexts_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingTexts_INTERFACE_DEFINED__ */


#ifndef __IDrawingContainer_INTERFACE_DEFINED__
#define __IDrawingContainer_INTERFACE_DEFINED__

/* interface IDrawingContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingContainer,0xD603FEC9,0x75B7,0x4fa5,0x91,0x8F,0x47,0x07,0x4C,0x45,0xB8,0x48);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D603FEC9-75B7-4fa5-918F-47074C45B848")
    IDrawingContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Objects( 
            /* [in] */ VARIANT ObjType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingTexts( 
            /* [retval][out] */ IDrawingTexts __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineSegments( 
            /* [retval][out] */ ILineSegments __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arcs( 
            /* [retval][out] */ IArcs __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Multilines( 
            /* [retval][out] */ IMultilines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingContours( 
            /* [retval][out] */ IDrawingContours __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Circles( 
            /* [retval][out] */ ICircles __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Points( 
            /* [retval][out] */ IPoints __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Beziers( 
            /* [retval][out] */ IBeziers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MacroObjects( 
            /* [retval][out] */ IMacroObjects __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Lines( 
            /* [retval][out] */ ILines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PolyLines2D( 
            /* [retval][out] */ IPolyLines2D __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Nurbses( 
            /* [retval][out] */ INurbses __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rasters( 
            /* [retval][out] */ IRasters __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OleDrawingObjects( 
            /* [retval][out] */ IOleDrawingObjects __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Ellipses( 
            /* [retval][out] */ IEllipses __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EllipseArcs( 
            /* [retval][out] */ IEllipseArcs __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rectangles( 
            /* [retval][out] */ IRectangles __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RegularPolygons( 
            /* [retval][out] */ IRegularPolygons __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Equidistants( 
            /* [retval][out] */ IEquidistants __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionObjects( 
            /* [retval][out] */ IInsertionObjects __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Hatches( 
            /* [retval][out] */ IHatches __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Colourings( 
            /* [retval][out] */ IColourings __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Objects )( 
            IDrawingContainer __RPC_FAR * This,
            /* [in] */ VARIANT ObjType,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingTexts )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IDrawingTexts __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineSegments )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ ILineSegments __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Arcs )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IArcs __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Multilines )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IMultilines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingContours )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IDrawingContours __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Circles )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ ICircles __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Points )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IPoints __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Beziers )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IBeziers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MacroObjects )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IMacroObjects __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Lines )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ ILines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PolyLines2D )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IPolyLines2D __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Nurbses )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ INurbses __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rasters )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IRasters __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OleDrawingObjects )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IOleDrawingObjects __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Ellipses )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IEllipses __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EllipseArcs )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IEllipseArcs __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rectangles )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IRectangles __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RegularPolygons )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IRegularPolygons __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Equidistants )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IEquidistants __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionObjects )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IInsertionObjects __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hatches )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IHatches __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Colourings )( 
            IDrawingContainer __RPC_FAR * This,
            /* [retval][out] */ IColourings __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IDrawingContainerVtbl;

    interface IDrawingContainer
    {
        CONST_VTBL struct IDrawingContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingContainer_get_Objects(This,ObjType,Result)	\
    (This)->lpVtbl -> get_Objects(This,ObjType,Result)

#define IDrawingContainer_get_DrawingTexts(This,PVal)	\
    (This)->lpVtbl -> get_DrawingTexts(This,PVal)

#define IDrawingContainer_get_LineSegments(This,PVal)	\
    (This)->lpVtbl -> get_LineSegments(This,PVal)

#define IDrawingContainer_get_Arcs(This,PVal)	\
    (This)->lpVtbl -> get_Arcs(This,PVal)

#define IDrawingContainer_get_Multilines(This,PVal)	\
    (This)->lpVtbl -> get_Multilines(This,PVal)

#define IDrawingContainer_get_DrawingContours(This,PVal)	\
    (This)->lpVtbl -> get_DrawingContours(This,PVal)

#define IDrawingContainer_get_Circles(This,PVal)	\
    (This)->lpVtbl -> get_Circles(This,PVal)

#define IDrawingContainer_get_Points(This,PVal)	\
    (This)->lpVtbl -> get_Points(This,PVal)

#define IDrawingContainer_get_Beziers(This,PVal)	\
    (This)->lpVtbl -> get_Beziers(This,PVal)

#define IDrawingContainer_get_MacroObjects(This,PVal)	\
    (This)->lpVtbl -> get_MacroObjects(This,PVal)

#define IDrawingContainer_get_Lines(This,PVal)	\
    (This)->lpVtbl -> get_Lines(This,PVal)

#define IDrawingContainer_get_PolyLines2D(This,PVal)	\
    (This)->lpVtbl -> get_PolyLines2D(This,PVal)

#define IDrawingContainer_get_Nurbses(This,PVal)	\
    (This)->lpVtbl -> get_Nurbses(This,PVal)

#define IDrawingContainer_get_Rasters(This,PVal)	\
    (This)->lpVtbl -> get_Rasters(This,PVal)

#define IDrawingContainer_get_OleDrawingObjects(This,PVal)	\
    (This)->lpVtbl -> get_OleDrawingObjects(This,PVal)

#define IDrawingContainer_get_Ellipses(This,PVal)	\
    (This)->lpVtbl -> get_Ellipses(This,PVal)

#define IDrawingContainer_get_EllipseArcs(This,PVal)	\
    (This)->lpVtbl -> get_EllipseArcs(This,PVal)

#define IDrawingContainer_get_Rectangles(This,PVal)	\
    (This)->lpVtbl -> get_Rectangles(This,PVal)

#define IDrawingContainer_get_RegularPolygons(This,PVal)	\
    (This)->lpVtbl -> get_RegularPolygons(This,PVal)

#define IDrawingContainer_get_Equidistants(This,PVal)	\
    (This)->lpVtbl -> get_Equidistants(This,PVal)

#define IDrawingContainer_get_InsertionObjects(This,PVal)	\
    (This)->lpVtbl -> get_InsertionObjects(This,PVal)

#define IDrawingContainer_get_Hatches(This,PVal)	\
    (This)->lpVtbl -> get_Hatches(This,PVal)

#define IDrawingContainer_get_Colourings(This,PVal)	\
    (This)->lpVtbl -> get_Colourings(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Objects_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [in] */ VARIANT ObjType,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IDrawingContainer_get_Objects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_DrawingTexts_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IDrawingTexts __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_DrawingTexts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_LineSegments_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ ILineSegments __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_LineSegments_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Arcs_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IArcs __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Arcs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Multilines_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IMultilines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Multilines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_DrawingContours_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IDrawingContours __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_DrawingContours_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Circles_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ ICircles __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Circles_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Points_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IPoints __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Beziers_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IBeziers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Beziers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_MacroObjects_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IMacroObjects __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_MacroObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Lines_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ ILines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Lines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_PolyLines2D_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IPolyLines2D __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_PolyLines2D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Nurbses_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ INurbses __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Nurbses_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Rasters_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IRasters __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Rasters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_OleDrawingObjects_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IOleDrawingObjects __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_OleDrawingObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Ellipses_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IEllipses __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Ellipses_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_EllipseArcs_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IEllipseArcs __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_EllipseArcs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Rectangles_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IRectangles __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Rectangles_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_RegularPolygons_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IRegularPolygons __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_RegularPolygons_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Equidistants_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IEquidistants __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Equidistants_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_InsertionObjects_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IInsertionObjects __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_InsertionObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Hatches_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IHatches __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Hatches_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContainer_get_Colourings_Proxy( 
    IDrawingContainer __RPC_FAR * This,
    /* [retval][out] */ IColourings __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingContainer_get_Colourings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingContainer_INTERFACE_DEFINED__ */


#ifndef __IMark_INTERFACE_DEFINED__
#define __IMark_INTERFACE_DEFINED__

/* interface IMark */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMark,0xB5D1A0BE,0x8F3C,0x4143,0xB9,0xC5,0x66,0xF0,0xCF,0x0F,0xE7,0x4D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B5D1A0BE-8F3C-4143-B9C5-66F0CF0FE74D")
    IMark : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoNumber( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoNumber( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Number( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextBefore( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAfter( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUnder( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Comment( 
            /* [retval][out] */ BSTR __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Comment( 
            /* [in] */ BSTR Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMark __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMark __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMark __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMark __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMark __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMark __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMark __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMark __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMark __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IMark __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IMark __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoNumber )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoNumber )( 
            IMark __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnder )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IMark __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IMark __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        END_INTERFACE
    } IMarkVtbl;

    interface IMark
    {
        CONST_VTBL struct IMarkVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMark_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMark_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMark_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMark_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMark_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMark_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMark_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMark_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMark_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMark_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMark_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMark_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMark_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMark_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMark_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMark_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMark_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMark_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMark_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMark_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMark_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IMark_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IMark_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IMark_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IMark_get_AutoNumber(This,Result)	\
    (This)->lpVtbl -> get_AutoNumber(This,Result)

#define IMark_put_AutoNumber(This,Value)	\
    (This)->lpVtbl -> put_AutoNumber(This,Value)

#define IMark_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IMark_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define IMark_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IMark_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IMark_get_TextUnder(This,PVal)	\
    (This)->lpVtbl -> get_TextUnder(This,PVal)

#define IMark_get_Comment(This,Result)	\
    (This)->lpVtbl -> get_Comment(This,Result)

#define IMark_put_Comment(This,Value)	\
    (This)->lpVtbl -> put_Comment(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_X_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IMark_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMark_put_X_Proxy( 
    IMark __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IMark_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_Y_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IMark_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMark_put_Y_Proxy( 
    IMark __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IMark_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_AutoNumber_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMark_get_AutoNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMark_put_AutoNumber_Proxy( 
    IMark __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IMark_put_AutoNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_Name_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMark_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_Number_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMark_get_Number_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_TextBefore_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMark_get_TextBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_TextAfter_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMark_get_TextAfter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_TextUnder_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMark_get_TextUnder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMark_get_Comment_Proxy( 
    IMark __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *Result);


void __RPC_STUB IMark_get_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMark_put_Comment_Proxy( 
    IMark __RPC_FAR * This,
    /* [in] */ BSTR Value);


void __RPC_STUB IMark_put_Comment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMark_INTERFACE_DEFINED__ */


#ifndef __IMarks_INTERFACE_DEFINED__
#define __IMarks_INTERFACE_DEFINED__

/* interface IMarks */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarks,0x47585370,0x56BD,0x4419,0x82,0xD9,0xDB,0x7C,0xBF,0xB1,0xA2,0x52);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("47585370-56BD-4419-82D9-DB7CBFB1A252")
    IMarks : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Mark( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMark __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum MarkType,
            /* [retval][out] */ IMark __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarksVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarks __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarks __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarks __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarks __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarks __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarks __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarks __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMarks __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMarks __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMarks __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMarks __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IMarks __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IMarks __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IMarks __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Mark )( 
            IMarks __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMark __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IMarks __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum MarkType,
            /* [retval][out] */ IMark __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IMarksVtbl;

    interface IMarks
    {
        CONST_VTBL struct IMarksVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarks_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarks_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarks_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarks_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarks_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarks_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarks_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarks_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMarks_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMarks_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMarks_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMarks_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IMarks_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IMarks_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IMarks_get_Mark(This,Index,Result)	\
    (This)->lpVtbl -> get_Mark(This,Index,Result)

#define IMarks_Add(This,MarkType,Result)	\
    (This)->lpVtbl -> Add(This,MarkType,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarks_get_Mark_Proxy( 
    IMarks __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IMark __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMarks_get_Mark_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarks_Add_Proxy( 
    IMarks __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DrawingObjectTypeEnum MarkType,
    /* [retval][out] */ IMark __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMarks_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarks_INTERFACE_DEFINED__ */


#ifndef __IMarkInsideForm_INTERFACE_DEFINED__
#define __IMarkInsideForm_INTERFACE_DEFINED__

/* interface IMarkInsideForm */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarkInsideForm,0xE5C5A0FF,0x6CAB,0x4179,0x9B,0xF3,0x86,0x8D,0x96,0xBF,0x6A,0xEA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E5C5A0FF-6CAB-4179-9BF3-868D96BF6AEA")
    IMarkInsideForm : public IMark
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Form( 
            /* [in] */ /* external definition not present */ ksMarkInsideFormEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Form( 
            /* [retval][out] */ /* external definition not present */ ksMarkInsideFormEnum __RPC_FAR *NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FormGabarit( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FormGabarit( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FormHeight( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FormHeight( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FormStyle( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FormStyle( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkInsideFormVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarkInsideForm __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarkInsideForm __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoNumber )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoNumber )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnder )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Form )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkInsideFormEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Form )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksMarkInsideFormEnum __RPC_FAR *NewVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FormGabarit )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FormGabarit )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FormHeight )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FormHeight )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FormStyle )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FormStyle )( 
            IMarkInsideForm __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IMarkInsideFormVtbl;

    interface IMarkInsideForm
    {
        CONST_VTBL struct IMarkInsideFormVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarkInsideForm_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarkInsideForm_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarkInsideForm_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarkInsideForm_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarkInsideForm_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarkInsideForm_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarkInsideForm_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarkInsideForm_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMarkInsideForm_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMarkInsideForm_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMarkInsideForm_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMarkInsideForm_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMarkInsideForm_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMarkInsideForm_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMarkInsideForm_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMarkInsideForm_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMarkInsideForm_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMarkInsideForm_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMarkInsideForm_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMarkInsideForm_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMarkInsideForm_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IMarkInsideForm_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IMarkInsideForm_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IMarkInsideForm_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IMarkInsideForm_get_AutoNumber(This,Result)	\
    (This)->lpVtbl -> get_AutoNumber(This,Result)

#define IMarkInsideForm_put_AutoNumber(This,Value)	\
    (This)->lpVtbl -> put_AutoNumber(This,Value)

#define IMarkInsideForm_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IMarkInsideForm_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define IMarkInsideForm_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IMarkInsideForm_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IMarkInsideForm_get_TextUnder(This,PVal)	\
    (This)->lpVtbl -> get_TextUnder(This,PVal)

#define IMarkInsideForm_get_Comment(This,Result)	\
    (This)->lpVtbl -> get_Comment(This,Result)

#define IMarkInsideForm_put_Comment(This,Value)	\
    (This)->lpVtbl -> put_Comment(This,Value)


#define IMarkInsideForm_get_Angle(This,Result)	\
    (This)->lpVtbl -> get_Angle(This,Result)

#define IMarkInsideForm_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#define IMarkInsideForm_put_Form(This,NewVal)	\
    (This)->lpVtbl -> put_Form(This,NewVal)

#define IMarkInsideForm_get_Form(This,NewVal)	\
    (This)->lpVtbl -> get_Form(This,NewVal)

#define IMarkInsideForm_put_FormGabarit(This,NewVal)	\
    (This)->lpVtbl -> put_FormGabarit(This,NewVal)

#define IMarkInsideForm_get_FormGabarit(This,PVal)	\
    (This)->lpVtbl -> get_FormGabarit(This,PVal)

#define IMarkInsideForm_put_FormHeight(This,NewVal)	\
    (This)->lpVtbl -> put_FormHeight(This,NewVal)

#define IMarkInsideForm_get_FormHeight(This,PVal)	\
    (This)->lpVtbl -> get_FormHeight(This,PVal)

#define IMarkInsideForm_put_FormStyle(This,NewVal)	\
    (This)->lpVtbl -> put_FormStyle(This,NewVal)

#define IMarkInsideForm_get_FormStyle(This,PVal)	\
    (This)->lpVtbl -> get_FormStyle(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_get_Angle_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IMarkInsideForm_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_put_Angle_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IMarkInsideForm_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_put_Form_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMarkInsideFormEnum NewVal);


void __RPC_STUB IMarkInsideForm_put_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_get_Form_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksMarkInsideFormEnum __RPC_FAR *NewVal);


void __RPC_STUB IMarkInsideForm_get_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_put_FormGabarit_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMarkInsideForm_put_FormGabarit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_get_FormGabarit_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMarkInsideForm_get_FormGabarit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_put_FormHeight_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMarkInsideForm_put_FormHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_get_FormHeight_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMarkInsideForm_get_FormHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_put_FormStyle_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IMarkInsideForm_put_FormStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkInsideForm_get_FormStyle_Proxy( 
    IMarkInsideForm __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IMarkInsideForm_get_FormStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarkInsideForm_INTERFACE_DEFINED__ */


#ifndef __IMarkOnLine_INTERFACE_DEFINED__
#define __IMarkOnLine_INTERFACE_DEFINED__

/* interface IMarkOnLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarkOnLine,0x5A1540F9,0x7388,0x466f,0xA1,0x3C,0xEB,0x11,0x33,0x42,0x3D,0xD9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5A1540F9-7388-466f-A13C-EB1133423DD9")
    IMarkOnLine : public IMark
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Position( 
            /* [retval][out] */ /* external definition not present */ ksMarkOnLinePosTypeEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Position( 
            /* [in] */ /* external definition not present */ ksMarkOnLinePosTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Line( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Line( 
            /* [in] */ IDrawingObject __RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkOnLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarkOnLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarkOnLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarkOnLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoNumber )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoNumber )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnder )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Position )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksMarkOnLinePosTypeEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Position )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkOnLinePosTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Line )( 
            IMarkOnLine __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Line )( 
            IMarkOnLine __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Value);
        
        END_INTERFACE
    } IMarkOnLineVtbl;

    interface IMarkOnLine
    {
        CONST_VTBL struct IMarkOnLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarkOnLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarkOnLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarkOnLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarkOnLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarkOnLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarkOnLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarkOnLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarkOnLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMarkOnLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMarkOnLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMarkOnLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMarkOnLine_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMarkOnLine_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMarkOnLine_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMarkOnLine_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMarkOnLine_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMarkOnLine_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMarkOnLine_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMarkOnLine_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMarkOnLine_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMarkOnLine_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IMarkOnLine_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IMarkOnLine_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IMarkOnLine_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IMarkOnLine_get_AutoNumber(This,Result)	\
    (This)->lpVtbl -> get_AutoNumber(This,Result)

#define IMarkOnLine_put_AutoNumber(This,Value)	\
    (This)->lpVtbl -> put_AutoNumber(This,Value)

#define IMarkOnLine_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IMarkOnLine_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define IMarkOnLine_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IMarkOnLine_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IMarkOnLine_get_TextUnder(This,PVal)	\
    (This)->lpVtbl -> get_TextUnder(This,PVal)

#define IMarkOnLine_get_Comment(This,Result)	\
    (This)->lpVtbl -> get_Comment(This,Result)

#define IMarkOnLine_put_Comment(This,Value)	\
    (This)->lpVtbl -> put_Comment(This,Value)


#define IMarkOnLine_get_Position(This,Result)	\
    (This)->lpVtbl -> get_Position(This,Result)

#define IMarkOnLine_put_Position(This,Value)	\
    (This)->lpVtbl -> put_Position(This,Value)

#define IMarkOnLine_get_Line(This,Result)	\
    (This)->lpVtbl -> get_Line(This,Result)

#define IMarkOnLine_put_Line(This,Value)	\
    (This)->lpVtbl -> put_Line(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLine_get_Position_Proxy( 
    IMarkOnLine __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksMarkOnLinePosTypeEnum __RPC_FAR *Result);


void __RPC_STUB IMarkOnLine_get_Position_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLine_put_Position_Proxy( 
    IMarkOnLine __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMarkOnLinePosTypeEnum Value);


void __RPC_STUB IMarkOnLine_put_Position_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLine_get_Line_Proxy( 
    IMarkOnLine __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMarkOnLine_get_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLine_put_Line_Proxy( 
    IMarkOnLine __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Value);


void __RPC_STUB IMarkOnLine_put_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarkOnLine_INTERFACE_DEFINED__ */


#ifndef __IMarkOnLeader_INTERFACE_DEFINED__
#define __IMarkOnLeader_INTERFACE_DEFINED__

/* interface IMarkOnLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarkOnLeader,0xF3D7E6A6,0x26EA,0x4d68,0xAD,0x58,0x4D,0xE1,0x94,0xC4,0x7B,0x4E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F3D7E6A6-26EA-4d68-AD58-4DE194C47B4E")
    IMarkOnLeader : public IMark
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ /* external definition not present */ ksArrowEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParallelBranch( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ParallelBranch( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchPoints( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPoints( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchBegin( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchBegin( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchX( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchX( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchY( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchY( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPointsCount( 
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranch( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Begin,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranchByPoint( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Begin,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteBranch( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkOnLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarkOnLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarkOnLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoNumber )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoNumber )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Number )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnder )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Comment )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Comment )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParallelBranch )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParallelBranch )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchCount )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchPoints )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPoints )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchBegin )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchBegin )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchX )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchX )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchY )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchY )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPointsCount )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranch )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Begin,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranchByPoint )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Begin,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteBranch )( 
            IMarkOnLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IMarkOnLeaderVtbl;

    interface IMarkOnLeader
    {
        CONST_VTBL struct IMarkOnLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarkOnLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarkOnLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarkOnLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarkOnLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarkOnLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarkOnLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarkOnLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarkOnLeader_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMarkOnLeader_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMarkOnLeader_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMarkOnLeader_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMarkOnLeader_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMarkOnLeader_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMarkOnLeader_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMarkOnLeader_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMarkOnLeader_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMarkOnLeader_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMarkOnLeader_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMarkOnLeader_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMarkOnLeader_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMarkOnLeader_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IMarkOnLeader_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IMarkOnLeader_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IMarkOnLeader_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IMarkOnLeader_get_AutoNumber(This,Result)	\
    (This)->lpVtbl -> get_AutoNumber(This,Result)

#define IMarkOnLeader_put_AutoNumber(This,Value)	\
    (This)->lpVtbl -> put_AutoNumber(This,Value)

#define IMarkOnLeader_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IMarkOnLeader_get_Number(This,PVal)	\
    (This)->lpVtbl -> get_Number(This,PVal)

#define IMarkOnLeader_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IMarkOnLeader_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IMarkOnLeader_get_TextUnder(This,PVal)	\
    (This)->lpVtbl -> get_TextUnder(This,PVal)

#define IMarkOnLeader_get_Comment(This,Result)	\
    (This)->lpVtbl -> get_Comment(This,Result)

#define IMarkOnLeader_put_Comment(This,Value)	\
    (This)->lpVtbl -> put_Comment(This,Value)


#define IMarkOnLeader_get_ArrowType(This,PVal)	\
    (This)->lpVtbl -> get_ArrowType(This,PVal)

#define IMarkOnLeader_put_ArrowType(This,NewVal)	\
    (This)->lpVtbl -> put_ArrowType(This,NewVal)

#define IMarkOnLeader_get_ShelfDirection(This,PVal)	\
    (This)->lpVtbl -> get_ShelfDirection(This,PVal)

#define IMarkOnLeader_put_ShelfDirection(This,NewVal)	\
    (This)->lpVtbl -> put_ShelfDirection(This,NewVal)

#define IMarkOnLeader_get_ParallelBranch(This,PVal)	\
    (This)->lpVtbl -> get_ParallelBranch(This,PVal)

#define IMarkOnLeader_put_ParallelBranch(This,NewVal)	\
    (This)->lpVtbl -> put_ParallelBranch(This,NewVal)

#define IMarkOnLeader_get_BranchCount(This,PVal)	\
    (This)->lpVtbl -> get_BranchCount(This,PVal)

#define IMarkOnLeader_put_BranchPoints(This,Index,Points)	\
    (This)->lpVtbl -> put_BranchPoints(This,Index,Points)

#define IMarkOnLeader_get_BranchPoints(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchPoints(This,Index,PVal)

#define IMarkOnLeader_put_BranchBegin(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchBegin(This,Index,NewVal)

#define IMarkOnLeader_get_BranchBegin(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchBegin(This,Index,PVal)

#define IMarkOnLeader_put_BranchX(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchX(This,Index,NewVal)

#define IMarkOnLeader_get_BranchX(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchX(This,Index,PVal)

#define IMarkOnLeader_put_BranchY(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchY(This,Index,NewVal)

#define IMarkOnLeader_get_BranchY(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchY(This,Index,PVal)

#define IMarkOnLeader_get_BranchPointsCount(This,Index,Result)	\
    (This)->lpVtbl -> get_BranchPointsCount(This,Index,Result)

#define IMarkOnLeader_AddBranch(This,Index,Begin,Points,Result)	\
    (This)->lpVtbl -> AddBranch(This,Index,Begin,Points,Result)

#define IMarkOnLeader_AddBranchByPoint(This,Index,Begin,X,Y,Result)	\
    (This)->lpVtbl -> AddBranchByPoint(This,Index,Begin,X,Y,Result)

#define IMarkOnLeader_DeleteBranch(This,Index,Result)	\
    (This)->lpVtbl -> DeleteBranch(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_ArrowType_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_ArrowType_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum NewVal);


void __RPC_STUB IMarkOnLeader_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_ShelfDirection_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_ShelfDirection_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum NewVal);


void __RPC_STUB IMarkOnLeader_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_ParallelBranch_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_ParallelBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_ParallelBranch_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMarkOnLeader_put_ParallelBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_BranchCount_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_BranchCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_BranchPoints_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Points);


void __RPC_STUB IMarkOnLeader_put_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_BranchPoints_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_BranchBegin_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMarkOnLeader_put_BranchBegin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_BranchBegin_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_BranchBegin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_BranchX_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB IMarkOnLeader_put_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_BranchX_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_put_BranchY_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB IMarkOnLeader_put_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_BranchY_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMarkOnLeader_get_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_get_BranchPointsCount_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMarkOnLeader_get_BranchPointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_AddBranch_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Begin,
    /* [in] */ VARIANT Points,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMarkOnLeader_AddBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_AddBranchByPoint_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Begin,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMarkOnLeader_AddBranchByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkOnLeader_DeleteBranch_Proxy( 
    IMarkOnLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMarkOnLeader_DeleteBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarkOnLeader_INTERFACE_DEFINED__ */


#ifndef __IBuildingAxis_INTERFACE_DEFINED__
#define __IBuildingAxis_INTERFACE_DEFINED__

/* interface IBuildingAxis */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBuildingAxis,0x123C45BF,0x14DE,0x433e,0xB3,0xB0,0x2F,0xB6,0x42,0xA9,0xA4,0x18);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("123C45BF-14DE-433e-B3B0-2FB642A9A418")
    IBuildingAxis : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoubleMark( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoubleMark( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MarkSize( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkSize( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DottedLength( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DottedLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Interval( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Interval( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Stroke( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Stroke( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextBefore( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAfter( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoStroke( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoStroke( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetInsertionPoints( 
            /* [in] */ VARIANT_BOOL First,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [out] */ VARIANT __RPC_FAR *Nodes,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNodeByPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Limit,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddNodeByPoint( 
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBuildingAxisVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBuildingAxis __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBuildingAxis __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBuildingAxis __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DoubleMark )( 
            IBuildingAxis __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DoubleMark )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkSize )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkSize )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DottedLength )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DottedLength )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Interval )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Interval )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Stroke )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Stroke )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoStroke )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoStroke )( 
            IBuildingAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInsertionPoints )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [out] */ VARIANT __RPC_FAR *Nodes,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNodeByPoint )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Limit,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddNodeByPoint )( 
            IBuildingAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IBuildingAxisVtbl;

    interface IBuildingAxis
    {
        CONST_VTBL struct IBuildingAxisVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBuildingAxis_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBuildingAxis_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBuildingAxis_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBuildingAxis_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBuildingAxis_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBuildingAxis_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBuildingAxis_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBuildingAxis_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBuildingAxis_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBuildingAxis_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBuildingAxis_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBuildingAxis_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBuildingAxis_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBuildingAxis_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBuildingAxis_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBuildingAxis_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBuildingAxis_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBuildingAxis_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBuildingAxis_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBuildingAxis_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBuildingAxis_put_DoubleMark(This,NewVal)	\
    (This)->lpVtbl -> put_DoubleMark(This,NewVal)

#define IBuildingAxis_get_DoubleMark(This,PVal)	\
    (This)->lpVtbl -> get_DoubleMark(This,PVal)

#define IBuildingAxis_put_MarkSize(This,NewVal)	\
    (This)->lpVtbl -> put_MarkSize(This,NewVal)

#define IBuildingAxis_get_MarkSize(This,PVal)	\
    (This)->lpVtbl -> get_MarkSize(This,PVal)

#define IBuildingAxis_put_DottedLength(This,NewVal)	\
    (This)->lpVtbl -> put_DottedLength(This,NewVal)

#define IBuildingAxis_get_DottedLength(This,PVal)	\
    (This)->lpVtbl -> get_DottedLength(This,PVal)

#define IBuildingAxis_put_Interval(This,NewVal)	\
    (This)->lpVtbl -> put_Interval(This,NewVal)

#define IBuildingAxis_get_Interval(This,PVal)	\
    (This)->lpVtbl -> get_Interval(This,PVal)

#define IBuildingAxis_put_Stroke(This,NewVal)	\
    (This)->lpVtbl -> put_Stroke(This,NewVal)

#define IBuildingAxis_get_Stroke(This,PVal)	\
    (This)->lpVtbl -> get_Stroke(This,PVal)

#define IBuildingAxis_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IBuildingAxis_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IBuildingAxis_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IBuildingAxis_put_AutoStroke(This,NewVal)	\
    (This)->lpVtbl -> put_AutoStroke(This,NewVal)

#define IBuildingAxis_get_AutoStroke(This,PVal)	\
    (This)->lpVtbl -> get_AutoStroke(This,PVal)

#define IBuildingAxis_GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)	\
    (This)->lpVtbl -> GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)

#define IBuildingAxis_GetNodeByPoint(This,X,Y,Limit,PVal)	\
    (This)->lpVtbl -> GetNodeByPoint(This,X,Y,Limit,PVal)

#define IBuildingAxis_AddNodeByPoint(This,Type,X,Y,PVal)	\
    (This)->lpVtbl -> AddNodeByPoint(This,Type,X,Y,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_put_DoubleMark_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IBuildingAxis_put_DoubleMark_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_DoubleMark_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_DoubleMark_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_put_MarkSize_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBuildingAxis_put_MarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_MarkSize_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_MarkSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_put_DottedLength_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBuildingAxis_put_DottedLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_DottedLength_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_DottedLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_put_Interval_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBuildingAxis_put_Interval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_Interval_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_Interval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_put_Stroke_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBuildingAxis_put_Stroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_Stroke_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_Stroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_Text_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_TextBefore_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_TextBefore_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_TextAfter_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_TextAfter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_put_AutoStroke_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IBuildingAxis_put_AutoStroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_get_AutoStroke_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_get_AutoStroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_GetInsertionPoints_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [out] */ VARIANT __RPC_FAR *Points,
    /* [out] */ VARIANT __RPC_FAR *Directions,
    /* [out] */ VARIANT __RPC_FAR *Nodes,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);


void __RPC_STUB IBuildingAxis_GetInsertionPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_GetNodeByPoint_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Limit,
    /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_GetNodeByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBuildingAxis_AddNodeByPoint_Proxy( 
    IBuildingAxis __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingAxis_AddNodeByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBuildingAxis_INTERFACE_DEFINED__ */


#ifndef __IBuildingAxes_INTERFACE_DEFINED__
#define __IBuildingAxes_INTERFACE_DEFINED__

/* interface IBuildingAxes */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBuildingAxes,0x18072E1D,0x1802,0x41f5,0xA4,0x34,0x04,0xBB,0x9D,0x3F,0x15,0x7F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("18072E1D-1802-41f5-A434-04BB9D3F157F")
    IBuildingAxes : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BuildingAxis( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBuildingAxis __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum AxisType,
            /* [retval][out] */ IBuildingAxis __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBuildingAxesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBuildingAxes __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBuildingAxes __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBuildingAxes __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBuildingAxes __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBuildingAxes __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBuildingAxes __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBuildingAxes __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBuildingAxes __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBuildingAxes __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BuildingAxis )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBuildingAxis __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBuildingAxes __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum AxisType,
            /* [retval][out] */ IBuildingAxis __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IBuildingAxesVtbl;

    interface IBuildingAxes
    {
        CONST_VTBL struct IBuildingAxesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBuildingAxes_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBuildingAxes_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBuildingAxes_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBuildingAxes_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBuildingAxes_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBuildingAxes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBuildingAxes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBuildingAxes_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBuildingAxes_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBuildingAxes_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBuildingAxes_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBuildingAxes_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBuildingAxes_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBuildingAxes_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBuildingAxes_get_BuildingAxis(This,Index,Result)	\
    (This)->lpVtbl -> get_BuildingAxis(This,Index,Result)

#define IBuildingAxes_Add(This,AxisType,Result)	\
    (This)->lpVtbl -> Add(This,AxisType,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingAxes_get_BuildingAxis_Proxy( 
    IBuildingAxes __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBuildingAxis __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBuildingAxes_get_BuildingAxis_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBuildingAxes_Add_Proxy( 
    IBuildingAxes __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DrawingObjectTypeEnum AxisType,
    /* [retval][out] */ IBuildingAxis __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBuildingAxes_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBuildingAxes_INTERFACE_DEFINED__ */


#ifndef __IStraightAxis_INTERFACE_DEFINED__
#define __IStraightAxis_INTERFACE_DEFINED__

/* interface IStraightAxis */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IStraightAxis,0x7B2820E0,0x2CB7,0x4412,0x9B,0x96,0xF2,0x91,0xDD,0x79,0x04,0x48);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7B2820E0-2CB7-4412-9B96-F291DD790448")
    IStraightAxis : public IBuildingAxis
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jut( 
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ IAxisJut __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkNodes( 
            /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IStraightAxisVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IStraightAxis __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IStraightAxis __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IStraightAxis __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DoubleMark )( 
            IStraightAxis __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DoubleMark )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkSize )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkSize )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DottedLength )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DottedLength )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Interval )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Interval )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Stroke )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Stroke )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoStroke )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoStroke )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInsertionPoints )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [out] */ VARIANT __RPC_FAR *Nodes,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNodeByPoint )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Limit,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddNodeByPoint )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jut )( 
            IStraightAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ IAxisJut __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkNodes )( 
            IStraightAxis __RPC_FAR * This,
            /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IStraightAxisVtbl;

    interface IStraightAxis
    {
        CONST_VTBL struct IStraightAxisVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IStraightAxis_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IStraightAxis_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IStraightAxis_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IStraightAxis_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IStraightAxis_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IStraightAxis_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IStraightAxis_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IStraightAxis_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IStraightAxis_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IStraightAxis_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IStraightAxis_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IStraightAxis_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IStraightAxis_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IStraightAxis_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IStraightAxis_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IStraightAxis_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IStraightAxis_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IStraightAxis_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IStraightAxis_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IStraightAxis_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IStraightAxis_put_DoubleMark(This,NewVal)	\
    (This)->lpVtbl -> put_DoubleMark(This,NewVal)

#define IStraightAxis_get_DoubleMark(This,PVal)	\
    (This)->lpVtbl -> get_DoubleMark(This,PVal)

#define IStraightAxis_put_MarkSize(This,NewVal)	\
    (This)->lpVtbl -> put_MarkSize(This,NewVal)

#define IStraightAxis_get_MarkSize(This,PVal)	\
    (This)->lpVtbl -> get_MarkSize(This,PVal)

#define IStraightAxis_put_DottedLength(This,NewVal)	\
    (This)->lpVtbl -> put_DottedLength(This,NewVal)

#define IStraightAxis_get_DottedLength(This,PVal)	\
    (This)->lpVtbl -> get_DottedLength(This,PVal)

#define IStraightAxis_put_Interval(This,NewVal)	\
    (This)->lpVtbl -> put_Interval(This,NewVal)

#define IStraightAxis_get_Interval(This,PVal)	\
    (This)->lpVtbl -> get_Interval(This,PVal)

#define IStraightAxis_put_Stroke(This,NewVal)	\
    (This)->lpVtbl -> put_Stroke(This,NewVal)

#define IStraightAxis_get_Stroke(This,PVal)	\
    (This)->lpVtbl -> get_Stroke(This,PVal)

#define IStraightAxis_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IStraightAxis_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IStraightAxis_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IStraightAxis_put_AutoStroke(This,NewVal)	\
    (This)->lpVtbl -> put_AutoStroke(This,NewVal)

#define IStraightAxis_get_AutoStroke(This,PVal)	\
    (This)->lpVtbl -> get_AutoStroke(This,PVal)

#define IStraightAxis_GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)	\
    (This)->lpVtbl -> GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)

#define IStraightAxis_GetNodeByPoint(This,X,Y,Limit,PVal)	\
    (This)->lpVtbl -> GetNodeByPoint(This,X,Y,Limit,PVal)

#define IStraightAxis_AddNodeByPoint(This,Type,X,Y,PVal)	\
    (This)->lpVtbl -> AddNodeByPoint(This,Type,X,Y,PVal)


#define IStraightAxis_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IStraightAxis_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IStraightAxis_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IStraightAxis_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IStraightAxis_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IStraightAxis_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IStraightAxis_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IStraightAxis_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IStraightAxis_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IStraightAxis_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IStraightAxis_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IStraightAxis_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IStraightAxis_get_Jut(This,First,PRes)	\
    (This)->lpVtbl -> get_Jut(This,First,PRes)

#define IStraightAxis_get_MarkNodes(This,PVal)	\
    (This)->lpVtbl -> get_MarkNodes(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IStraightAxis_put_X1_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IStraightAxis_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_X1_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IStraightAxis_put_Y1_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IStraightAxis_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_Y1_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IStraightAxis_put_X2_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IStraightAxis_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_X2_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IStraightAxis_put_Y2_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IStraightAxis_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_Y2_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IStraightAxis_put_Length_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IStraightAxis_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_Length_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IStraightAxis_put_Angle_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IStraightAxis_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_Angle_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_Jut_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [retval][out] */ IAxisJut __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IStraightAxis_get_Jut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IStraightAxis_get_MarkNodes_Proxy( 
    IStraightAxis __RPC_FAR * This,
    /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IStraightAxis_get_MarkNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IStraightAxis_INTERFACE_DEFINED__ */


#ifndef __IArcAxis_INTERFACE_DEFINED__
#define __IArcAxis_INTERFACE_DEFINED__

/* interface IArcAxis */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IArcAxis,0xDAA9755A,0x3971,0x4713,0xB2,0x81,0x15,0x99,0x5C,0xBF,0x2E,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DAA9755A-3971-4713-B281-15995CBF2E56")
    IArcAxis : public IBuildingAxis
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Jut( 
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ IAxisJut __RPC_FAR *__RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkNodes( 
            /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IArcAxisVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IArcAxis __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IArcAxis __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IArcAxis __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DoubleMark )( 
            IArcAxis __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DoubleMark )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkSize )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkSize )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DottedLength )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DottedLength )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Interval )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Interval )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Stroke )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Stroke )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoStroke )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoStroke )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInsertionPoints )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [out] */ VARIANT __RPC_FAR *Nodes,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNodeByPoint )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Limit,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddNodeByPoint )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Jut )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ IAxisJut __RPC_FAR *__RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkNodes )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IArcAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IArcAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IArcAxisVtbl;

    interface IArcAxis
    {
        CONST_VTBL struct IArcAxisVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IArcAxis_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IArcAxis_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IArcAxis_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IArcAxis_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IArcAxis_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IArcAxis_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IArcAxis_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IArcAxis_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IArcAxis_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IArcAxis_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IArcAxis_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IArcAxis_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IArcAxis_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IArcAxis_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IArcAxis_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IArcAxis_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IArcAxis_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IArcAxis_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IArcAxis_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IArcAxis_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IArcAxis_put_DoubleMark(This,NewVal)	\
    (This)->lpVtbl -> put_DoubleMark(This,NewVal)

#define IArcAxis_get_DoubleMark(This,PVal)	\
    (This)->lpVtbl -> get_DoubleMark(This,PVal)

#define IArcAxis_put_MarkSize(This,NewVal)	\
    (This)->lpVtbl -> put_MarkSize(This,NewVal)

#define IArcAxis_get_MarkSize(This,PVal)	\
    (This)->lpVtbl -> get_MarkSize(This,PVal)

#define IArcAxis_put_DottedLength(This,NewVal)	\
    (This)->lpVtbl -> put_DottedLength(This,NewVal)

#define IArcAxis_get_DottedLength(This,PVal)	\
    (This)->lpVtbl -> get_DottedLength(This,PVal)

#define IArcAxis_put_Interval(This,NewVal)	\
    (This)->lpVtbl -> put_Interval(This,NewVal)

#define IArcAxis_get_Interval(This,PVal)	\
    (This)->lpVtbl -> get_Interval(This,PVal)

#define IArcAxis_put_Stroke(This,NewVal)	\
    (This)->lpVtbl -> put_Stroke(This,NewVal)

#define IArcAxis_get_Stroke(This,PVal)	\
    (This)->lpVtbl -> get_Stroke(This,PVal)

#define IArcAxis_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IArcAxis_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define IArcAxis_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define IArcAxis_put_AutoStroke(This,NewVal)	\
    (This)->lpVtbl -> put_AutoStroke(This,NewVal)

#define IArcAxis_get_AutoStroke(This,PVal)	\
    (This)->lpVtbl -> get_AutoStroke(This,PVal)

#define IArcAxis_GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)	\
    (This)->lpVtbl -> GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)

#define IArcAxis_GetNodeByPoint(This,X,Y,Limit,PVal)	\
    (This)->lpVtbl -> GetNodeByPoint(This,X,Y,Limit,PVal)

#define IArcAxis_AddNodeByPoint(This,Type,X,Y,PVal)	\
    (This)->lpVtbl -> AddNodeByPoint(This,Type,X,Y,PVal)


#define IArcAxis_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IArcAxis_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IArcAxis_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IArcAxis_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IArcAxis_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IArcAxis_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IArcAxis_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IArcAxis_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IArcAxis_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IArcAxis_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IArcAxis_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IArcAxis_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IArcAxis_put_Angle1(This,NewVal)	\
    (This)->lpVtbl -> put_Angle1(This,NewVal)

#define IArcAxis_get_Angle1(This,PVal)	\
    (This)->lpVtbl -> get_Angle1(This,PVal)

#define IArcAxis_put_Angle2(This,NewVal)	\
    (This)->lpVtbl -> put_Angle2(This,NewVal)

#define IArcAxis_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define IArcAxis_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define IArcAxis_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IArcAxis_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IArcAxis_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IArcAxis_get_Jut(This,First,PRes)	\
    (This)->lpVtbl -> get_Jut(This,First,PRes)

#define IArcAxis_get_MarkNodes(This,PVal)	\
    (This)->lpVtbl -> get_MarkNodes(This,PVal)

#define IArcAxis_put_X3(This,NewVal)	\
    (This)->lpVtbl -> put_X3(This,NewVal)

#define IArcAxis_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IArcAxis_put_Y3(This,NewVal)	\
    (This)->lpVtbl -> put_Y3(This,NewVal)

#define IArcAxis_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Xc_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Xc_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Yc_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Yc_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_X1_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_X1_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Y1_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Y1_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_X2_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_X2_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Y2_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Y2_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Angle1_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Angle1_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Angle2_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Angle2_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Radius_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Radius_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Direction_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IArcAxis_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Direction_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Jut_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [retval][out] */ IAxisJut __RPC_FAR *__RPC_FAR *PRes);


void __RPC_STUB IArcAxis_get_Jut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_MarkNodes_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_MarkNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_X3_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_X3_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcAxis_put_Y3_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArcAxis_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcAxis_get_Y3_Proxy( 
    IArcAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcAxis_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IArcAxis_INTERFACE_DEFINED__ */


#ifndef __ICircleAxis_INTERFACE_DEFINED__
#define __ICircleAxis_INTERFACE_DEFINED__

/* interface ICircleAxis */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICircleAxis,0xD84358FB,0x674C,0x4a5d,0x93,0xBA,0xEE,0x5D,0x33,0x42,0x09,0x7B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D84358FB-674C-4a5d-93BA-EE5D3342097B")
    ICircleAxis : public IBuildingAxis
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MarkAngle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkAngle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MarkOn( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseMarkNode( 
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICircleAxisVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICircleAxis __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICircleAxis __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICircleAxis __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DoubleMark )( 
            ICircleAxis __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DoubleMark )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkSize )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkSize )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DottedLength )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DottedLength )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Interval )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Interval )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Stroke )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Stroke )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextBefore )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfter )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoStroke )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoStroke )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInsertionPoints )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [out] */ VARIANT __RPC_FAR *Nodes,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNodeByPoint )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Limit,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddNodeByPoint )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkAngle )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkAngle )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            ICircleAxis __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkOn )( 
            ICircleAxis __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkOn )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseMarkNode )( 
            ICircleAxis __RPC_FAR * This,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ICircleAxisVtbl;

    interface ICircleAxis
    {
        CONST_VTBL struct ICircleAxisVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICircleAxis_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICircleAxis_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICircleAxis_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICircleAxis_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICircleAxis_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICircleAxis_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICircleAxis_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICircleAxis_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICircleAxis_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICircleAxis_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICircleAxis_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICircleAxis_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ICircleAxis_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ICircleAxis_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ICircleAxis_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ICircleAxis_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ICircleAxis_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ICircleAxis_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ICircleAxis_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ICircleAxis_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ICircleAxis_put_DoubleMark(This,NewVal)	\
    (This)->lpVtbl -> put_DoubleMark(This,NewVal)

#define ICircleAxis_get_DoubleMark(This,PVal)	\
    (This)->lpVtbl -> get_DoubleMark(This,PVal)

#define ICircleAxis_put_MarkSize(This,NewVal)	\
    (This)->lpVtbl -> put_MarkSize(This,NewVal)

#define ICircleAxis_get_MarkSize(This,PVal)	\
    (This)->lpVtbl -> get_MarkSize(This,PVal)

#define ICircleAxis_put_DottedLength(This,NewVal)	\
    (This)->lpVtbl -> put_DottedLength(This,NewVal)

#define ICircleAxis_get_DottedLength(This,PVal)	\
    (This)->lpVtbl -> get_DottedLength(This,PVal)

#define ICircleAxis_put_Interval(This,NewVal)	\
    (This)->lpVtbl -> put_Interval(This,NewVal)

#define ICircleAxis_get_Interval(This,PVal)	\
    (This)->lpVtbl -> get_Interval(This,PVal)

#define ICircleAxis_put_Stroke(This,NewVal)	\
    (This)->lpVtbl -> put_Stroke(This,NewVal)

#define ICircleAxis_get_Stroke(This,PVal)	\
    (This)->lpVtbl -> get_Stroke(This,PVal)

#define ICircleAxis_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define ICircleAxis_get_TextBefore(This,PVal)	\
    (This)->lpVtbl -> get_TextBefore(This,PVal)

#define ICircleAxis_get_TextAfter(This,PVal)	\
    (This)->lpVtbl -> get_TextAfter(This,PVal)

#define ICircleAxis_put_AutoStroke(This,NewVal)	\
    (This)->lpVtbl -> put_AutoStroke(This,NewVal)

#define ICircleAxis_get_AutoStroke(This,PVal)	\
    (This)->lpVtbl -> get_AutoStroke(This,PVal)

#define ICircleAxis_GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)	\
    (This)->lpVtbl -> GetInsertionPoints(This,First,Points,Directions,Nodes,RetVal)

#define ICircleAxis_GetNodeByPoint(This,X,Y,Limit,PVal)	\
    (This)->lpVtbl -> GetNodeByPoint(This,X,Y,Limit,PVal)

#define ICircleAxis_AddNodeByPoint(This,Type,X,Y,PVal)	\
    (This)->lpVtbl -> AddNodeByPoint(This,Type,X,Y,PVal)


#define ICircleAxis_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define ICircleAxis_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define ICircleAxis_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define ICircleAxis_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define ICircleAxis_put_MarkAngle(This,NewVal)	\
    (This)->lpVtbl -> put_MarkAngle(This,NewVal)

#define ICircleAxis_get_MarkAngle(This,PVal)	\
    (This)->lpVtbl -> get_MarkAngle(This,PVal)

#define ICircleAxis_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define ICircleAxis_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define ICircleAxis_put_MarkOn(This,NewVal)	\
    (This)->lpVtbl -> put_MarkOn(This,NewVal)

#define ICircleAxis_get_MarkOn(This,PVal)	\
    (This)->lpVtbl -> get_MarkOn(This,PVal)

#define ICircleAxis_get_BaseMarkNode(This,PVal)	\
    (This)->lpVtbl -> get_BaseMarkNode(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleAxis_put_Xc_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircleAxis_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleAxis_get_Xc_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircleAxis_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleAxis_put_Yc_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircleAxis_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleAxis_get_Yc_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircleAxis_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleAxis_put_MarkAngle_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircleAxis_put_MarkAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleAxis_get_MarkAngle_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircleAxis_get_MarkAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleAxis_put_Radius_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircleAxis_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleAxis_get_Radius_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircleAxis_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleAxis_put_MarkOn_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ICircleAxis_put_MarkOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleAxis_get_MarkOn_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircleAxis_get_MarkOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleAxis_get_BaseMarkNode_Proxy( 
    ICircleAxis __RPC_FAR * This,
    /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ICircleAxis_get_BaseMarkNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICircleAxis_INTERFACE_DEFINED__ */


#ifndef __IAxisJut_INTERFACE_DEFINED__
#define __IAxisJut_INTERFACE_DEFINED__

/* interface IAxisJut */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAxisJut,0x5A22E024,0xF530,0x45db,0xA3,0xF2,0xCA,0x05,0x87,0xBD,0xA1,0xB5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5A22E024-F530-45db-A3F2-CA0587BDA1B5")
    IAxisJut : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MarkOffset( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkOffset( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakOffset( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakOffset( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakDirection( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakDirection( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MarkOn( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkOn( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAxisJutVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAxisJut __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAxisJut __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAxisJut __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkOffset )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkOffset )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakOffset )( 
            IAxisJut __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakOffset )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakDirection )( 
            IAxisJut __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakDirection )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkOn )( 
            IAxisJut __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkOn )( 
            IAxisJut __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IAxisJutVtbl;

    interface IAxisJut
    {
        CONST_VTBL struct IAxisJutVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAxisJut_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAxisJut_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAxisJut_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAxisJut_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAxisJut_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAxisJut_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAxisJut_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAxisJut_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAxisJut_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAxisJut_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAxisJut_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAxisJut_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IAxisJut_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IAxisJut_put_MarkOffset(This,NewVal)	\
    (This)->lpVtbl -> put_MarkOffset(This,NewVal)

#define IAxisJut_get_MarkOffset(This,PVal)	\
    (This)->lpVtbl -> get_MarkOffset(This,PVal)

#define IAxisJut_put_BreakOffset(This,NewVal)	\
    (This)->lpVtbl -> put_BreakOffset(This,NewVal)

#define IAxisJut_get_BreakOffset(This,PVal)	\
    (This)->lpVtbl -> get_BreakOffset(This,PVal)

#define IAxisJut_put_BreakDirection(This,NewVal)	\
    (This)->lpVtbl -> put_BreakDirection(This,NewVal)

#define IAxisJut_get_BreakDirection(This,PVal)	\
    (This)->lpVtbl -> get_BreakDirection(This,PVal)

#define IAxisJut_put_MarkOn(This,NewVal)	\
    (This)->lpVtbl -> put_MarkOn(This,NewVal)

#define IAxisJut_get_MarkOn(This,PVal)	\
    (This)->lpVtbl -> get_MarkOn(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisJut_put_Length_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisJut_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisJut_get_Length_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisJut_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisJut_put_MarkOffset_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisJut_put_MarkOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisJut_get_MarkOffset_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisJut_get_MarkOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisJut_put_BreakOffset_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisJut_put_BreakOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisJut_get_BreakOffset_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisJut_get_BreakOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisJut_put_BreakDirection_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisJut_put_BreakDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisJut_get_BreakDirection_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisJut_get_BreakDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisJut_put_MarkOn_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisJut_put_MarkOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisJut_get_MarkOn_Proxy( 
    IAxisJut __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisJut_get_MarkOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAxisJut_INTERFACE_DEFINED__ */


#ifndef __IMarkNode_INTERFACE_DEFINED__
#define __IMarkNode_INTERFACE_DEFINED__

/* interface IMarkNode */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarkNode,0x5AC48E97,0x80B1,0x459f,0x97,0x09,0x1F,0x3F,0x37,0x45,0x59,0xBE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5AC48E97-80B1-459f-9709-1F3F374559BE")
    IMarkNode : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MarkType( 
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkType( 
            /* [retval][out] */ /* external definition not present */ ksMarkNodeEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoubleMark( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = FALSE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoubleMark( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RefLength( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RefLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MarkNodes( 
            /* [in] */ VARIANT_BOOL Left,
            /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetInsertionPoints( 
            /* [in] */ VARIANT_BOOL LeftJut,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkNodeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarkNode __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarkNode __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarkNode __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MarkType )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkType )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksMarkNodeEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DoubleMark )( 
            IMarkNode __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DoubleMark )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RefLength )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RefLength )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MarkNodes )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Left,
            /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMarkNode __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInsertionPoints )( 
            IMarkNode __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL LeftJut,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Directions,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);
        
        END_INTERFACE
    } IMarkNodeVtbl;

    interface IMarkNode
    {
        CONST_VTBL struct IMarkNodeVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarkNode_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarkNode_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarkNode_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarkNode_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarkNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarkNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarkNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarkNode_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMarkNode_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMarkNode_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMarkNode_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMarkNode_put_MarkType(This,Val)	\
    (This)->lpVtbl -> put_MarkType(This,Val)

#define IMarkNode_get_MarkType(This,Val)	\
    (This)->lpVtbl -> get_MarkType(This,Val)

#define IMarkNode_put_DoubleMark(This,NewVal)	\
    (This)->lpVtbl -> put_DoubleMark(This,NewVal)

#define IMarkNode_get_DoubleMark(This,PVal)	\
    (This)->lpVtbl -> get_DoubleMark(This,PVal)

#define IMarkNode_put_RefLength(This,NewVal)	\
    (This)->lpVtbl -> put_RefLength(This,NewVal)

#define IMarkNode_get_RefLength(This,PVal)	\
    (This)->lpVtbl -> get_RefLength(This,PVal)

#define IMarkNode_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IMarkNode_get_MarkNodes(This,Left,PVal)	\
    (This)->lpVtbl -> get_MarkNodes(This,Left,PVal)

#define IMarkNode_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMarkNode_GetInsertionPoints(This,LeftJut,Points,Directions,RetVal)	\
    (This)->lpVtbl -> GetInsertionPoints(This,LeftJut,Points,Directions,RetVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkNode_put_MarkType_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMarkNodeEnum Val);


void __RPC_STUB IMarkNode_put_MarkType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkNode_get_MarkType_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksMarkNodeEnum __RPC_FAR *Val);


void __RPC_STUB IMarkNode_get_MarkType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkNode_put_DoubleMark_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMarkNode_put_DoubleMark_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkNode_get_DoubleMark_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMarkNode_get_DoubleMark_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMarkNode_put_RefLength_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IMarkNode_put_RefLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkNode_get_RefLength_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMarkNode_get_RefLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkNode_get_Text_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMarkNode_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkNode_get_MarkNodes_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Left,
    /* [retval][out] */ IMarkNodes __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMarkNode_get_MarkNodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkNode_Delete_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IMarkNode_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkNode_GetInsertionPoints_Proxy( 
    IMarkNode __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL LeftJut,
    /* [out] */ VARIANT __RPC_FAR *Points,
    /* [out] */ VARIANT __RPC_FAR *Directions,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *RetVal);


void __RPC_STUB IMarkNode_GetInsertionPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarkNode_INTERFACE_DEFINED__ */


#ifndef __IMarkNodes_INTERFACE_DEFINED__
#define __IMarkNodes_INTERFACE_DEFINED__

/* interface IMarkNodes */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarkNodes,0xEB8ACD77,0x8008,0x4f89,0xA3,0x11,0x2F,0x47,0x12,0x46,0x2F,0x72);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EB8ACD77-8008-4f89-A311-2F4712462F72")
    IMarkNodes : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkNodesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarkNodes __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarkNodes __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarkNodes __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarkNodes __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarkNodes __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarkNodes __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarkNodes __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IMarkNodes __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IMarkNodes __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IMarkNodes __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IMarkNodesVtbl;

    interface IMarkNodes
    {
        CONST_VTBL struct IMarkNodesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarkNodes_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarkNodes_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarkNodes_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarkNodes_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarkNodes_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarkNodes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarkNodes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarkNodes_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMarkNodes_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMarkNodes_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMarkNodes_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMarkNodes_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IMarkNodes_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IMarkNodes_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IMarkNodes_Add(This,Type,Index,Result)	\
    (This)->lpVtbl -> Add(This,Type,Index,Result)

#define IMarkNodes_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkNodes_get_Item_Proxy( 
    IMarkNodes __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMarkNodes_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkNodes_Add_Proxy( 
    IMarkNodes __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksMarkNodeEnum Type,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IMarkNode __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMarkNodes_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMarkNodes_Clear_Proxy( 
    IMarkNodes __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMarkNodes_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarkNodes_INTERFACE_DEFINED__ */


#ifndef __ILineSegments_INTERFACE_DEFINED__
#define __ILineSegments_INTERFACE_DEFINED__

/* interface ILineSegments */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILineSegments,0xB211C782,0xA830,0x468e,0x9F,0x4F,0xC4,0x99,0xA7,0x70,0x78,0xD8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B211C782-A830-468e-9F4F-C499A77078D8")
    ILineSegments : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineSegment( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILineSegment __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILineSegment __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineSegmentsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILineSegments __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILineSegments __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILineSegments __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILineSegments __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILineSegments __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILineSegments __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILineSegments __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILineSegments __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineSegment )( 
            ILineSegments __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILineSegment __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILineSegments __RPC_FAR * This,
            /* [retval][out] */ ILineSegment __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ILineSegmentsVtbl;

    interface ILineSegments
    {
        CONST_VTBL struct ILineSegmentsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILineSegments_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILineSegments_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILineSegments_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILineSegments_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILineSegments_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILineSegments_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILineSegments_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILineSegments_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILineSegments_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILineSegments_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILineSegments_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILineSegments_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILineSegments_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILineSegments_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILineSegments_get_LineSegment(This,Index,Result)	\
    (This)->lpVtbl -> get_LineSegment(This,Index,Result)

#define ILineSegments_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegments_get_LineSegment_Proxy( 
    ILineSegments __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILineSegment __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILineSegments_get_LineSegment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILineSegments_Add_Proxy( 
    ILineSegments __RPC_FAR * This,
    /* [retval][out] */ ILineSegment __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILineSegments_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILineSegments_INTERFACE_DEFINED__ */


#ifndef __ILineSegment_INTERFACE_DEFINED__
#define __ILineSegment_INTERFACE_DEFINED__

/* interface ILineSegment */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILineSegment,0x64ACC86F,0x4B10,0x4897,0x85,0x52,0xBC,0x0A,0x55,0x6D,0x22,0x8B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("64ACC86F-4B10-4897-8552-BC0A556D228B")
    ILineSegment : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineSegmentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILineSegment __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILineSegment __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILineSegment __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            ILineSegment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            ILineSegment __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } ILineSegmentVtbl;

    interface ILineSegment
    {
        CONST_VTBL struct ILineSegmentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILineSegment_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILineSegment_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILineSegment_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILineSegment_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILineSegment_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILineSegment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILineSegment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILineSegment_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILineSegment_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILineSegment_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILineSegment_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILineSegment_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ILineSegment_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ILineSegment_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ILineSegment_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ILineSegment_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ILineSegment_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ILineSegment_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ILineSegment_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ILineSegment_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ILineSegment_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define ILineSegment_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define ILineSegment_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define ILineSegment_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define ILineSegment_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define ILineSegment_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define ILineSegment_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define ILineSegment_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define ILineSegment_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define ILineSegment_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define ILineSegment_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define ILineSegment_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ILineSegment_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define ILineSegment_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_X1_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILineSegment_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_X1_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineSegment_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_Y1_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILineSegment_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_Y1_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineSegment_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_X2_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILineSegment_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_X2_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineSegment_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_Y2_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILineSegment_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_Y2_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineSegment_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_Length_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILineSegment_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_Length_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineSegment_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_Angle_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILineSegment_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_Angle_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineSegment_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineSegment_get_Style_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ILineSegment_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineSegment_put_Style_Proxy( 
    ILineSegment __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB ILineSegment_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILineSegment_INTERFACE_DEFINED__ */


#ifndef __ICutUnitMarking_INTERFACE_DEFINED__
#define __ICutUnitMarking_INTERFACE_DEFINED__

/* interface ICutUnitMarking */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICutUnitMarking,0x2EDA58EE,0xDBDA,0x44cc,0xAD,0x10,0x68,0x95,0x00,0x6D,0x49,0x8C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2EDA58EE-DBDA-44cc-AD10-6895006D498C")
    ICutUnitMarking : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StrokeCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StrokeX( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StrokeX( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StrokeY( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StrokeY( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Stroke( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Stroke( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUp( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDown( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddStroke( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Length,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteStroke( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICutUnitMarkingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICutUnitMarking __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICutUnitMarking __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StrokeCount )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StrokeX )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StrokeX )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StrokeY )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StrokeY )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Stroke )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Stroke )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUp )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDown )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddStroke )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Length,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteStroke )( 
            ICutUnitMarking __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ICutUnitMarkingVtbl;

    interface ICutUnitMarking
    {
        CONST_VTBL struct ICutUnitMarkingVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICutUnitMarking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICutUnitMarking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICutUnitMarking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICutUnitMarking_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICutUnitMarking_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICutUnitMarking_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICutUnitMarking_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICutUnitMarking_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICutUnitMarking_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICutUnitMarking_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICutUnitMarking_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICutUnitMarking_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ICutUnitMarking_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ICutUnitMarking_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ICutUnitMarking_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ICutUnitMarking_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ICutUnitMarking_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ICutUnitMarking_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ICutUnitMarking_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ICutUnitMarking_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ICutUnitMarking_get_StrokeCount(This,Result)	\
    (This)->lpVtbl -> get_StrokeCount(This,Result)

#define ICutUnitMarking_put_StrokeX(This,Index,NewVal)	\
    (This)->lpVtbl -> put_StrokeX(This,Index,NewVal)

#define ICutUnitMarking_get_StrokeX(This,Index,PVal)	\
    (This)->lpVtbl -> get_StrokeX(This,Index,PVal)

#define ICutUnitMarking_put_StrokeY(This,Index,NewVal)	\
    (This)->lpVtbl -> put_StrokeY(This,Index,NewVal)

#define ICutUnitMarking_get_StrokeY(This,Index,PVal)	\
    (This)->lpVtbl -> get_StrokeY(This,Index,PVal)

#define ICutUnitMarking_put_Stroke(This,Index,NewVal)	\
    (This)->lpVtbl -> put_Stroke(This,Index,NewVal)

#define ICutUnitMarking_get_Stroke(This,Index,PVal)	\
    (This)->lpVtbl -> get_Stroke(This,Index,PVal)

#define ICutUnitMarking_get_Angle(This,Result)	\
    (This)->lpVtbl -> get_Angle(This,Result)

#define ICutUnitMarking_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#define ICutUnitMarking_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define ICutUnitMarking_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define ICutUnitMarking_get_ShelfX(This,Result)	\
    (This)->lpVtbl -> get_ShelfX(This,Result)

#define ICutUnitMarking_put_ShelfX(This,Result)	\
    (This)->lpVtbl -> put_ShelfX(This,Result)

#define ICutUnitMarking_get_ShelfY(This,Result)	\
    (This)->lpVtbl -> get_ShelfY(This,Result)

#define ICutUnitMarking_put_ShelfY(This,Result)	\
    (This)->lpVtbl -> put_ShelfY(This,Result)

#define ICutUnitMarking_get_TextUp(This,PVal)	\
    (This)->lpVtbl -> get_TextUp(This,PVal)

#define ICutUnitMarking_get_TextDown(This,PVal)	\
    (This)->lpVtbl -> get_TextDown(This,PVal)

#define ICutUnitMarking_AddStroke(This,X,Y,Length,Result)	\
    (This)->lpVtbl -> AddStroke(This,X,Y,Length,Result)

#define ICutUnitMarking_DeleteStroke(This,Index,Result)	\
    (This)->lpVtbl -> DeleteStroke(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_StrokeCount_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_get_StrokeCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_StrokeX_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB ICutUnitMarking_put_StrokeX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_StrokeX_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICutUnitMarking_get_StrokeX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_StrokeY_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB ICutUnitMarking_put_StrokeY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_StrokeY_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICutUnitMarking_get_StrokeY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_Stroke_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB ICutUnitMarking_put_Stroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_Stroke_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICutUnitMarking_get_Stroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_Angle_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_Angle_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ICutUnitMarking_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_ShelfDirection_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_ShelfDirection_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB ICutUnitMarking_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_ShelfX_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_ShelfX_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICutUnitMarking_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_ShelfY_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_put_ShelfY_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB ICutUnitMarking_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_TextUp_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ICutUnitMarking_get_TextUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_get_TextDown_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ICutUnitMarking_get_TextDown_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_AddStroke_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Length,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_AddStroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutUnitMarking_DeleteStroke_Proxy( 
    ICutUnitMarking __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutUnitMarking_DeleteStroke_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICutUnitMarking_INTERFACE_DEFINED__ */


#ifndef __ICutUnitMarkings_INTERFACE_DEFINED__
#define __ICutUnitMarkings_INTERFACE_DEFINED__

/* interface ICutUnitMarkings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICutUnitMarkings,0x23B00F94,0x98D3,0x4ad7,0x88,0x27,0xF4,0x08,0x8F,0x4A,0x9E,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("23B00F94-98D3-4ad7-8827-F4088F4A9E5C")
    ICutUnitMarkings : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutUnitMarking( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICutUnitMarking __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ICutUnitMarking __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICutUnitMarkingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICutUnitMarkings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICutUnitMarkings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutUnitMarking )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICutUnitMarking __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ICutUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ ICutUnitMarking __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ICutUnitMarkingsVtbl;

    interface ICutUnitMarkings
    {
        CONST_VTBL struct ICutUnitMarkingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICutUnitMarkings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICutUnitMarkings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICutUnitMarkings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICutUnitMarkings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICutUnitMarkings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICutUnitMarkings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICutUnitMarkings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICutUnitMarkings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICutUnitMarkings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICutUnitMarkings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICutUnitMarkings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICutUnitMarkings_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ICutUnitMarkings_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ICutUnitMarkings_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ICutUnitMarkings_get_CutUnitMarking(This,Index,Result)	\
    (This)->lpVtbl -> get_CutUnitMarking(This,Index,Result)

#define ICutUnitMarkings_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutUnitMarkings_get_CutUnitMarking_Proxy( 
    ICutUnitMarkings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ICutUnitMarking __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICutUnitMarkings_get_CutUnitMarking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutUnitMarkings_Add_Proxy( 
    ICutUnitMarkings __RPC_FAR * This,
    /* [retval][out] */ ICutUnitMarking __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ICutUnitMarkings_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICutUnitMarkings_INTERFACE_DEFINED__ */


#ifndef __IUnitMarking_INTERFACE_DEFINED__
#define __IUnitMarking_INTERFACE_DEFINED__

/* interface IUnitMarking */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUnitMarking,0x86F46084,0x16A8,0x4b5c,0x99,0xE9,0xF8,0x48,0x21,0x67,0x88,0xF0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("86F46084-16A8-4b5c-99E9-F848216788F0")
    IUnitMarking : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Form( 
            /* [retval][out] */ /* external definition not present */ ksContourFormEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Form( 
            /* [in] */ /* external definition not present */ ksContourFormEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUp( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDown( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FilletRadius( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FilletRadius( 
            /* [in] */ double Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUnitMarkingVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUnitMarking __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUnitMarking __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUnitMarking __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Form )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksContourFormEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Form )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksContourFormEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUp )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDown )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FilletRadius )( 
            IUnitMarking __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FilletRadius )( 
            IUnitMarking __RPC_FAR * This,
            /* [in] */ double Result);
        
        END_INTERFACE
    } IUnitMarkingVtbl;

    interface IUnitMarking
    {
        CONST_VTBL struct IUnitMarkingVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUnitMarking_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUnitMarking_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUnitMarking_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUnitMarking_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUnitMarking_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUnitMarking_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUnitMarking_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUnitMarking_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUnitMarking_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUnitMarking_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUnitMarking_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUnitMarking_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IUnitMarking_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IUnitMarking_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IUnitMarking_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IUnitMarking_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IUnitMarking_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IUnitMarking_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IUnitMarking_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IUnitMarking_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IUnitMarking_get_Xc(This,Result)	\
    (This)->lpVtbl -> get_Xc(This,Result)

#define IUnitMarking_put_Xc(This,Result)	\
    (This)->lpVtbl -> put_Xc(This,Result)

#define IUnitMarking_get_Yc(This,Result)	\
    (This)->lpVtbl -> get_Yc(This,Result)

#define IUnitMarking_put_Yc(This,Result)	\
    (This)->lpVtbl -> put_Yc(This,Result)

#define IUnitMarking_get_Radius(This,Result)	\
    (This)->lpVtbl -> get_Radius(This,Result)

#define IUnitMarking_put_Radius(This,Result)	\
    (This)->lpVtbl -> put_Radius(This,Result)

#define IUnitMarking_get_Height(This,Result)	\
    (This)->lpVtbl -> get_Height(This,Result)

#define IUnitMarking_put_Height(This,Result)	\
    (This)->lpVtbl -> put_Height(This,Result)

#define IUnitMarking_get_Width(This,Result)	\
    (This)->lpVtbl -> get_Width(This,Result)

#define IUnitMarking_put_Width(This,Result)	\
    (This)->lpVtbl -> put_Width(This,Result)

#define IUnitMarking_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define IUnitMarking_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IUnitMarking_get_ShelfX(This,Result)	\
    (This)->lpVtbl -> get_ShelfX(This,Result)

#define IUnitMarking_put_ShelfX(This,Result)	\
    (This)->lpVtbl -> put_ShelfX(This,Result)

#define IUnitMarking_get_ShelfY(This,Result)	\
    (This)->lpVtbl -> get_ShelfY(This,Result)

#define IUnitMarking_put_ShelfY(This,Result)	\
    (This)->lpVtbl -> put_ShelfY(This,Result)

#define IUnitMarking_get_Form(This,Result)	\
    (This)->lpVtbl -> get_Form(This,Result)

#define IUnitMarking_put_Form(This,Value)	\
    (This)->lpVtbl -> put_Form(This,Value)

#define IUnitMarking_get_TextUp(This,PVal)	\
    (This)->lpVtbl -> get_TextUp(This,PVal)

#define IUnitMarking_get_TextDown(This,PVal)	\
    (This)->lpVtbl -> get_TextDown(This,PVal)

#define IUnitMarking_get_FilletRadius(This,Result)	\
    (This)->lpVtbl -> get_FilletRadius(This,Result)

#define IUnitMarking_put_FilletRadius(This,Result)	\
    (This)->lpVtbl -> put_FilletRadius(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_Xc_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_Xc_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_Yc_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_Yc_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_Radius_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_Radius_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_Height_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_Height_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_Width_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_Width_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_ShelfDirection_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_ShelfDirection_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB IUnitMarking_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_ShelfX_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_ShelfX_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_ShelfY_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_ShelfY_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_Form_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksContourFormEnum __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_Form_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksContourFormEnum Value);


void __RPC_STUB IUnitMarking_put_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_TextUp_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IUnitMarking_get_TextUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_TextDown_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IUnitMarking_get_TextDown_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarking_get_FilletRadius_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitMarking_get_FilletRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitMarking_put_FilletRadius_Proxy( 
    IUnitMarking __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IUnitMarking_put_FilletRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUnitMarking_INTERFACE_DEFINED__ */


#ifndef __IUnitMarkings_INTERFACE_DEFINED__
#define __IUnitMarkings_INTERFACE_DEFINED__

/* interface IUnitMarkings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUnitMarkings,0x969AD901,0xFC09,0x47f5,0x94,0xF5,0x1A,0xBE,0xB1,0xA9,0xC8,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("969AD901-FC09-47f5-94F5-1ABEB1A9C85C")
    IUnitMarkings : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitMarking( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUnitMarking __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IUnitMarking __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUnitMarkingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUnitMarkings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUnitMarkings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUnitMarkings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUnitMarkings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUnitMarkings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUnitMarkings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUnitMarkings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IUnitMarkings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnitMarking )( 
            IUnitMarkings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUnitMarking __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IUnitMarkings __RPC_FAR * This,
            /* [retval][out] */ IUnitMarking __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IUnitMarkingsVtbl;

    interface IUnitMarkings
    {
        CONST_VTBL struct IUnitMarkingsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUnitMarkings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUnitMarkings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUnitMarkings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUnitMarkings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUnitMarkings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUnitMarkings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUnitMarkings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUnitMarkings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUnitMarkings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUnitMarkings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUnitMarkings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUnitMarkings_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IUnitMarkings_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IUnitMarkings_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IUnitMarkings_get_UnitMarking(This,Index,Result)	\
    (This)->lpVtbl -> get_UnitMarking(This,Index,Result)

#define IUnitMarkings_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitMarkings_get_UnitMarking_Proxy( 
    IUnitMarkings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IUnitMarking __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IUnitMarkings_get_UnitMarking_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUnitMarkings_Add_Proxy( 
    IUnitMarkings __RPC_FAR * This,
    /* [retval][out] */ IUnitMarking __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IUnitMarkings_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUnitMarkings_INTERFACE_DEFINED__ */


#ifndef __IBuildingContainer_INTERFACE_DEFINED__
#define __IBuildingContainer_INTERFACE_DEFINED__

/* interface IBuildingContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBuildingContainer,0xFD1FD236,0xF5BA,0x4fb0,0xA8,0x72,0x21,0xFC,0x13,0xE6,0x89,0x5F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FD1FD236-F5BA-4fb0-A872-21FC13E6895F")
    IBuildingContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BuildingAxes( 
            /* [retval][out] */ IBuildingAxes __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Marks( 
            /* [retval][out] */ IMarks __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutUnitMarkings( 
            /* [retval][out] */ ICutUnitMarkings __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitMarkings( 
            /* [retval][out] */ IUnitMarkings __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MultiTextLeaders( 
            /* [retval][out] */ IMultiTextLeaders __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitNumbers( 
            /* [retval][out] */ IUnitNumbers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Braces( 
            /* [retval][out] */ IBraces __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BuildingCutLines( 
            /* [retval][out] */ ICutLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBuildingContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBuildingContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBuildingContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBuildingContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBuildingContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBuildingContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBuildingContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBuildingContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BuildingAxes )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ IBuildingAxes __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Marks )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ IMarks __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutUnitMarkings )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ ICutUnitMarkings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnitMarkings )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ IUnitMarkings __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MultiTextLeaders )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ IMultiTextLeaders __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnitNumbers )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ IUnitNumbers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Braces )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ IBraces __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BuildingCutLines )( 
            IBuildingContainer __RPC_FAR * This,
            /* [retval][out] */ ICutLines __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IBuildingContainerVtbl;

    interface IBuildingContainer
    {
        CONST_VTBL struct IBuildingContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBuildingContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBuildingContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBuildingContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBuildingContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBuildingContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBuildingContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBuildingContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBuildingContainer_get_BuildingAxes(This,PVal)	\
    (This)->lpVtbl -> get_BuildingAxes(This,PVal)

#define IBuildingContainer_get_Marks(This,PVal)	\
    (This)->lpVtbl -> get_Marks(This,PVal)

#define IBuildingContainer_get_CutUnitMarkings(This,PVal)	\
    (This)->lpVtbl -> get_CutUnitMarkings(This,PVal)

#define IBuildingContainer_get_UnitMarkings(This,PVal)	\
    (This)->lpVtbl -> get_UnitMarkings(This,PVal)

#define IBuildingContainer_get_MultiTextLeaders(This,PVal)	\
    (This)->lpVtbl -> get_MultiTextLeaders(This,PVal)

#define IBuildingContainer_get_UnitNumbers(This,PVal)	\
    (This)->lpVtbl -> get_UnitNumbers(This,PVal)

#define IBuildingContainer_get_Braces(This,PVal)	\
    (This)->lpVtbl -> get_Braces(This,PVal)

#define IBuildingContainer_get_BuildingCutLines(This,PVal)	\
    (This)->lpVtbl -> get_BuildingCutLines(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_BuildingAxes_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ IBuildingAxes __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_BuildingAxes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_Marks_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ IMarks __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_Marks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_CutUnitMarkings_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ ICutUnitMarkings __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_CutUnitMarkings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_UnitMarkings_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ IUnitMarkings __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_UnitMarkings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_MultiTextLeaders_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ IMultiTextLeaders __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_MultiTextLeaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_UnitNumbers_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ IUnitNumbers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_UnitNumbers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_Braces_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ IBraces __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_Braces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBuildingContainer_get_BuildingCutLines_Proxy( 
    IBuildingContainer __RPC_FAR * This,
    /* [retval][out] */ ICutLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBuildingContainer_get_BuildingCutLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBuildingContainer_INTERFACE_DEFINED__ */


#ifndef __IArcs_INTERFACE_DEFINED__
#define __IArcs_INTERFACE_DEFINED__

/* interface IArcs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IArcs,0x4FCB4C17,0x3B9E,0x45e8,0xB8,0x3C,0x92,0x84,0x02,0x7B,0xAA,0x0D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4FCB4C17-3B9E-45e8-B83C-9284027BAA0D")
    IArcs : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arc( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IArc __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IArc __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IArcsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IArcs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IArcs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IArcs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IArcs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IArcs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IArcs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IArcs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IArcs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Arc )( 
            IArcs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IArc __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IArcs __RPC_FAR * This,
            /* [retval][out] */ IArc __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IArcsVtbl;

    interface IArcs
    {
        CONST_VTBL struct IArcsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IArcs_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IArcs_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IArcs_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IArcs_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IArcs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IArcs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IArcs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IArcs_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IArcs_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IArcs_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IArcs_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IArcs_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IArcs_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IArcs_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IArcs_get_Arc(This,Index,Result)	\
    (This)->lpVtbl -> get_Arc(This,Index,Result)

#define IArcs_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcs_get_Arc_Proxy( 
    IArcs __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IArc __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IArcs_get_Arc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IArcs_Add_Proxy( 
    IArcs __RPC_FAR * This,
    /* [retval][out] */ IArc __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IArcs_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IArcs_INTERFACE_DEFINED__ */


#ifndef __IArc_INTERFACE_DEFINED__
#define __IArc_INTERFACE_DEFINED__

/* interface IArc */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IArc,0xA22DFB7E,0x21E0,0x4b28,0x9C,0xA1,0x29,0xB7,0x95,0x0C,0xF2,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A22DFB7E-21E0-4b28-9CA1-29B7950CF256")
    IArc : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IArcVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IArc __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IArc __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IArc __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IArc __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IArc __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IArc __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IArc __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IArc __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IArc __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IArc __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IArc __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IArcVtbl;

    interface IArc
    {
        CONST_VTBL struct IArcVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IArc_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IArc_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IArc_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IArc_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IArc_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IArc_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IArc_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IArc_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IArc_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IArc_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IArc_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IArc_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IArc_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IArc_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IArc_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IArc_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IArc_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IArc_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IArc_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IArc_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IArc_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define IArc_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IArc_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IArc_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IArc_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IArc_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IArc_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IArc_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IArc_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IArc_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IArc_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IArc_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IArc_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IArc_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IArc_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IArc_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IArc_put_X3(This,NewVal)	\
    (This)->lpVtbl -> put_X3(This,NewVal)

#define IArc_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IArc_put_Y3(This,NewVal)	\
    (This)->lpVtbl -> put_Y3(This,NewVal)

#define IArc_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#define IArc_put_Angle1(This,NewVal)	\
    (This)->lpVtbl -> put_Angle1(This,NewVal)

#define IArc_get_Angle1(This,PVal)	\
    (This)->lpVtbl -> get_Angle1(This,PVal)

#define IArc_put_Angle2(This,NewVal)	\
    (This)->lpVtbl -> put_Angle2(This,NewVal)

#define IArc_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define IArc_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IArc_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Radius_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Radius_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Direction_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IArc_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Direction_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Xc_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Xc_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Yc_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Yc_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_X1_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_X1_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Y1_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Y1_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_X2_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_X2_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Y2_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Y2_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_X3_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_X3_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Y3_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Y3_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Angle1_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Angle1_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Angle2_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IArc_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Angle2_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArc_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArc_get_Style_Proxy( 
    IArc __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IArc_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArc_put_Style_Proxy( 
    IArc __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IArc_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IArc_INTERFACE_DEFINED__ */


#ifndef __IMultiTextLeader_INTERFACE_DEFINED__
#define __IMultiTextLeader_INTERFACE_DEFINED__

/* interface IMultiTextLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMultiTextLeader,0x1BFC5D3F,0x1483,0x4569,0xB4,0xB5,0x7A,0x12,0x16,0x3A,0x46,0x55);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1BFC5D3F-1483-4569-B4B5-7A12163A4655")
    IMultiTextLeader : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ /* external definition not present */ ksArrowEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchPoints( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPoints( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPointsCount( 
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchX( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchX( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchY( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchY( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranch( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranchByPoint( 
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteBranch( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDirection( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextDirection( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Form( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Form( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Align( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Align( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMultiTextLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMultiTextLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMultiTextLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchCount )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchPoints )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPoints )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPointsCount )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchX )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchX )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchY )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchY )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranch )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranchByPoint )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteBranch )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDirection )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextDirection )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Form )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Form )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Align )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Align )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IMultiTextLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IMultiTextLeaderVtbl;

    interface IMultiTextLeader
    {
        CONST_VTBL struct IMultiTextLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMultiTextLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMultiTextLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMultiTextLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMultiTextLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMultiTextLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMultiTextLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMultiTextLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMultiTextLeader_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMultiTextLeader_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMultiTextLeader_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMultiTextLeader_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMultiTextLeader_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMultiTextLeader_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMultiTextLeader_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMultiTextLeader_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMultiTextLeader_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMultiTextLeader_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMultiTextLeader_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMultiTextLeader_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMultiTextLeader_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMultiTextLeader_get_ArrowType(This,Result)	\
    (This)->lpVtbl -> get_ArrowType(This,Result)

#define IMultiTextLeader_put_ArrowType(This,Value)	\
    (This)->lpVtbl -> put_ArrowType(This,Value)

#define IMultiTextLeader_get_BranchCount(This,Result)	\
    (This)->lpVtbl -> get_BranchCount(This,Result)

#define IMultiTextLeader_put_BranchPoints(This,Index,Points)	\
    (This)->lpVtbl -> put_BranchPoints(This,Index,Points)

#define IMultiTextLeader_get_BranchPoints(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchPoints(This,Index,PVal)

#define IMultiTextLeader_get_BranchPointsCount(This,Index,Result)	\
    (This)->lpVtbl -> get_BranchPointsCount(This,Index,Result)

#define IMultiTextLeader_put_BranchX(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchX(This,Index,NewVal)

#define IMultiTextLeader_get_BranchX(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchX(This,Index,PVal)

#define IMultiTextLeader_put_BranchY(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchY(This,Index,NewVal)

#define IMultiTextLeader_get_BranchY(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchY(This,Index,PVal)

#define IMultiTextLeader_AddBranch(This,Index,Points,Result)	\
    (This)->lpVtbl -> AddBranch(This,Index,Points,Result)

#define IMultiTextLeader_AddBranchByPoint(This,Index,X,Y,Result)	\
    (This)->lpVtbl -> AddBranchByPoint(This,Index,X,Y,Result)

#define IMultiTextLeader_DeleteBranch(This,Index,Result)	\
    (This)->lpVtbl -> DeleteBranch(This,Index,Result)

#define IMultiTextLeader_get_ShelfX(This,Result)	\
    (This)->lpVtbl -> get_ShelfX(This,Result)

#define IMultiTextLeader_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define IMultiTextLeader_get_ShelfY(This,Result)	\
    (This)->lpVtbl -> get_ShelfY(This,Result)

#define IMultiTextLeader_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#define IMultiTextLeader_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define IMultiTextLeader_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IMultiTextLeader_get_TextDirection(This,Result)	\
    (This)->lpVtbl -> get_TextDirection(This,Result)

#define IMultiTextLeader_put_TextDirection(This,Value)	\
    (This)->lpVtbl -> put_TextDirection(This,Value)

#define IMultiTextLeader_get_Form(This,Result)	\
    (This)->lpVtbl -> get_Form(This,Result)

#define IMultiTextLeader_put_Form(This,Value)	\
    (This)->lpVtbl -> put_Form(This,Value)

#define IMultiTextLeader_get_Align(This,Result)	\
    (This)->lpVtbl -> get_Align(This,Result)

#define IMultiTextLeader_put_Align(This,Value)	\
    (This)->lpVtbl -> put_Align(This,Value)

#define IMultiTextLeader_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_ArrowType_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_ArrowType_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum Value);


void __RPC_STUB IMultiTextLeader_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_BranchCount_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_BranchCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_BranchPoints_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Points);


void __RPC_STUB IMultiTextLeader_put_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_BranchPoints_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IMultiTextLeader_get_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_BranchPointsCount_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_BranchPointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_BranchX_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB IMultiTextLeader_put_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_BranchX_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMultiTextLeader_get_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_BranchY_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB IMultiTextLeader_put_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_BranchY_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMultiTextLeader_get_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_AddBranch_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Points,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_AddBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_AddBranchByPoint_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_AddBranchByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_DeleteBranch_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_DeleteBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_ShelfX_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_ShelfX_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IMultiTextLeader_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_ShelfY_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_ShelfY_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IMultiTextLeader_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_ShelfDirection_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_ShelfDirection_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB IMultiTextLeader_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_TextDirection_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_TextDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_TextDirection_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IMultiTextLeader_put_TextDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_Form_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_Form_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IMultiTextLeader_put_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_Align_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiTextLeader_get_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_put_Align_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IMultiTextLeader_put_Align_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeader_get_Text_Proxy( 
    IMultiTextLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMultiTextLeader_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMultiTextLeader_INTERFACE_DEFINED__ */


#ifndef __IMultiTextLeaders_INTERFACE_DEFINED__
#define __IMultiTextLeaders_INTERFACE_DEFINED__

/* interface IMultiTextLeaders */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMultiTextLeaders,0x233B2298,0x7A45,0x4ce1,0xAE,0xF2,0x30,0xB0,0x63,0xFD,0xB6,0x3C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("233B2298-7A45-4ce1-AEF2-30B063FDB63C")
    IMultiTextLeaders : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MultiTextLeader( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMultiTextLeader __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IMultiTextLeader __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMultiTextLeadersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMultiTextLeaders __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMultiTextLeaders __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MultiTextLeader )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMultiTextLeader __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IMultiTextLeaders __RPC_FAR * This,
            /* [retval][out] */ IMultiTextLeader __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IMultiTextLeadersVtbl;

    interface IMultiTextLeaders
    {
        CONST_VTBL struct IMultiTextLeadersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMultiTextLeaders_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMultiTextLeaders_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMultiTextLeaders_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMultiTextLeaders_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMultiTextLeaders_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMultiTextLeaders_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMultiTextLeaders_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMultiTextLeaders_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMultiTextLeaders_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMultiTextLeaders_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMultiTextLeaders_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMultiTextLeaders_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IMultiTextLeaders_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IMultiTextLeaders_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IMultiTextLeaders_get_MultiTextLeader(This,Index,Result)	\
    (This)->lpVtbl -> get_MultiTextLeader(This,Index,Result)

#define IMultiTextLeaders_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiTextLeaders_get_MultiTextLeader_Proxy( 
    IMultiTextLeaders __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IMultiTextLeader __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMultiTextLeaders_get_MultiTextLeader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiTextLeaders_Add_Proxy( 
    IMultiTextLeaders __RPC_FAR * This,
    /* [retval][out] */ IMultiTextLeader __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IMultiTextLeaders_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMultiTextLeaders_INTERFACE_DEFINED__ */


#ifndef __IBrace_INTERFACE_DEFINED__
#define __IBrace_INTERFACE_DEFINED__

/* interface IBrace */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBrace,0x7F328D28,0x76E9,0x4e04,0xA3,0x5C,0xAD,0x60,0x33,0x99,0x98,0xE4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7F328D28-76E9-4e04-A35C-AD60339998E4")
    IBrace : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Alignment( 
            /* [retval][out] */ /* external definition not present */ ksAlignmentTypeEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Alignment( 
            /* [in] */ /* external definition not present */ ksAlignmentTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfPoints( 
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfPoints( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBraceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBrace __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBrace __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBrace __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBrace __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBrace __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBrace __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBrace __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBrace __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBrace __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IBrace __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IBrace __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IBrace __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Alignment )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAlignmentTypeEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Alignment )( 
            IBrace __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAlignmentTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IBrace __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfPoints )( 
            IBrace __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfPoints )( 
            IBrace __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        END_INTERFACE
    } IBraceVtbl;

    interface IBrace
    {
        CONST_VTBL struct IBraceVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBrace_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBrace_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBrace_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBrace_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBrace_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBrace_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBrace_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBrace_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBrace_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBrace_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBrace_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBrace_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBrace_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBrace_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBrace_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBrace_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBrace_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBrace_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBrace_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBrace_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBrace_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IBrace_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IBrace_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IBrace_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IBrace_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IBrace_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IBrace_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IBrace_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IBrace_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IBrace_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IBrace_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IBrace_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IBrace_get_Radius(This,Result)	\
    (This)->lpVtbl -> get_Radius(This,Result)

#define IBrace_put_Radius(This,Value)	\
    (This)->lpVtbl -> put_Radius(This,Value)

#define IBrace_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define IBrace_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IBrace_get_ShelfX(This,Result)	\
    (This)->lpVtbl -> get_ShelfX(This,Result)

#define IBrace_put_ShelfX(This,Result)	\
    (This)->lpVtbl -> put_ShelfX(This,Result)

#define IBrace_get_ShelfY(This,Result)	\
    (This)->lpVtbl -> get_ShelfY(This,Result)

#define IBrace_put_ShelfY(This,Result)	\
    (This)->lpVtbl -> put_ShelfY(This,Result)

#define IBrace_get_Direction(This,Result)	\
    (This)->lpVtbl -> get_Direction(This,Result)

#define IBrace_put_Direction(This,Value)	\
    (This)->lpVtbl -> put_Direction(This,Value)

#define IBrace_get_Alignment(This,Result)	\
    (This)->lpVtbl -> get_Alignment(This,Result)

#define IBrace_put_Alignment(This,Value)	\
    (This)->lpVtbl -> put_Alignment(This,Value)

#define IBrace_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IBrace_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IBrace_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IBrace_put_ShelfPoints(This,Points)	\
    (This)->lpVtbl -> put_ShelfPoints(This,Points)

#define IBrace_get_ShelfPoints(This,PVal)	\
    (This)->lpVtbl -> get_ShelfPoints(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_X1_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrace_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_X1_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Y1_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrace_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Y1_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_X2_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrace_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_X2_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Y2_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrace_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Y2_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Length_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrace_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Length_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Angle_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrace_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Angle_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Radius_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBrace_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Radius_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBrace_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_ShelfDirection_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB IBrace_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_ShelfDirection_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB IBrace_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_ShelfX_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBrace_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_ShelfX_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IBrace_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_ShelfY_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBrace_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_ShelfY_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ double Result);


void __RPC_STUB IBrace_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Direction_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBrace_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Direction_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBrace_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Alignment_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAlignmentTypeEnum __RPC_FAR *Result);


void __RPC_STUB IBrace_get_Alignment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Alignment_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAlignmentTypeEnum Value);


void __RPC_STUB IBrace_put_Alignment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Style_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBrace_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_Style_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IBrace_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_Text_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBrace_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrace_put_ShelfPoints_Proxy( 
    IBrace __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB IBrace_put_ShelfPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrace_get_ShelfPoints_Proxy( 
    IBrace __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IBrace_get_ShelfPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBrace_INTERFACE_DEFINED__ */


#ifndef __IBraces_INTERFACE_DEFINED__
#define __IBraces_INTERFACE_DEFINED__

/* interface IBraces */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBraces,0x99F27BD6,0x6294,0x45d9,0xAF,0x78,0xA9,0xD5,0x2E,0x9D,0xD7,0x99);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("99F27BD6-6294-45d9-AF78-A9D52E9DD799")
    IBraces : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Brace( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBrace __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBrace __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBracesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBraces __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBraces __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBraces __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBraces __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBraces __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBraces __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBraces __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBraces __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Brace )( 
            IBraces __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBrace __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBraces __RPC_FAR * This,
            /* [retval][out] */ IBrace __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IBracesVtbl;

    interface IBraces
    {
        CONST_VTBL struct IBracesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBraces_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBraces_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBraces_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBraces_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBraces_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBraces_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBraces_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBraces_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBraces_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBraces_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBraces_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBraces_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBraces_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBraces_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBraces_get_Brace(This,Index,Result)	\
    (This)->lpVtbl -> get_Brace(This,Index,Result)

#define IBraces_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBraces_get_Brace_Proxy( 
    IBraces __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBrace __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBraces_get_Brace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBraces_Add_Proxy( 
    IBraces __RPC_FAR * This,
    /* [retval][out] */ IBrace __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IBraces_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBraces_INTERFACE_DEFINED__ */


#ifndef __IUnitNumber_INTERFACE_DEFINED__
#define __IUnitNumber_INTERFACE_DEFINED__

/* interface IUnitNumber */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUnitNumber,0xFABAF607,0xCB92,0x47c4,0x94,0x09,0xB7,0x67,0x81,0x62,0x05,0x1D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FABAF607-CB92-47c4-9409-B7678162051D")
    IUnitNumber : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUp( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDown( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUnitNumberVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUnitNumber __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUnitNumber __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUnitNumber __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IUnitNumber __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUp )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDown )( 
            IUnitNumber __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IUnitNumberVtbl;

    interface IUnitNumber
    {
        CONST_VTBL struct IUnitNumberVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUnitNumber_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUnitNumber_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUnitNumber_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUnitNumber_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUnitNumber_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUnitNumber_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUnitNumber_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUnitNumber_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUnitNumber_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUnitNumber_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUnitNumber_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUnitNumber_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IUnitNumber_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IUnitNumber_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IUnitNumber_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IUnitNumber_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IUnitNumber_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IUnitNumber_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IUnitNumber_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IUnitNumber_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IUnitNumber_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IUnitNumber_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IUnitNumber_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IUnitNumber_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IUnitNumber_get_TextUp(This,PVal)	\
    (This)->lpVtbl -> get_TextUp(This,PVal)

#define IUnitNumber_get_TextDown(This,PVal)	\
    (This)->lpVtbl -> get_TextDown(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitNumber_get_X_Proxy( 
    IUnitNumber __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitNumber_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitNumber_put_X_Proxy( 
    IUnitNumber __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IUnitNumber_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitNumber_get_Y_Proxy( 
    IUnitNumber __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IUnitNumber_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IUnitNumber_put_Y_Proxy( 
    IUnitNumber __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IUnitNumber_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitNumber_get_TextUp_Proxy( 
    IUnitNumber __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IUnitNumber_get_TextUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitNumber_get_TextDown_Proxy( 
    IUnitNumber __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IUnitNumber_get_TextDown_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUnitNumber_INTERFACE_DEFINED__ */


#ifndef __IUnitNumbers_INTERFACE_DEFINED__
#define __IUnitNumbers_INTERFACE_DEFINED__

/* interface IUnitNumbers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IUnitNumbers,0x598E649B,0x970C,0x454b,0x91,0x62,0x1B,0xB6,0xC9,0xFB,0xFC,0xBF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("598E649B-970C-454b-9162-1BB6C9FBFCBF")
    IUnitNumbers : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnitNumber( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUnitNumber __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IUnitNumber __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUnitNumbersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IUnitNumbers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IUnitNumbers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IUnitNumbers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IUnitNumbers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IUnitNumbers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IUnitNumbers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IUnitNumbers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IUnitNumbers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnitNumber )( 
            IUnitNumbers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IUnitNumber __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IUnitNumbers __RPC_FAR * This,
            /* [retval][out] */ IUnitNumber __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IUnitNumbersVtbl;

    interface IUnitNumbers
    {
        CONST_VTBL struct IUnitNumbersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUnitNumbers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUnitNumbers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUnitNumbers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUnitNumbers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUnitNumbers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUnitNumbers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUnitNumbers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUnitNumbers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IUnitNumbers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IUnitNumbers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IUnitNumbers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IUnitNumbers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IUnitNumbers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IUnitNumbers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IUnitNumbers_get_UnitNumber(This,Index,Result)	\
    (This)->lpVtbl -> get_UnitNumber(This,Index,Result)

#define IUnitNumbers_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IUnitNumbers_get_UnitNumber_Proxy( 
    IUnitNumbers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IUnitNumber __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IUnitNumbers_get_UnitNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IUnitNumbers_Add_Proxy( 
    IUnitNumbers __RPC_FAR * This,
    /* [retval][out] */ IUnitNumber __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IUnitNumbers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUnitNumbers_INTERFACE_DEFINED__ */


#ifndef __ISymbols2DContainer_INTERFACE_DEFINED__
#define __ISymbols2DContainer_INTERFACE_DEFINED__

/* interface ISymbols2DContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISymbols2DContainer,0xF46B0086,0x17F2,0x4489,0xA5,0xA7,0x0A,0xA6,0x77,0x61,0x0A,0xFD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F46B0086-17F2-4489-A5A7-0AA677610AFD")
    ISymbols2DContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineDimensions( 
            /* [retval][out] */ ILineDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadialDimensions( 
            /* [retval][out] */ IRadialDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DiametralDimensions( 
            /* [retval][out] */ IDiametralDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleDimensions( 
            /* [retval][out] */ IAngleDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakLineDimensions( 
            /* [retval][out] */ IBreakLineDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HeightDimensions( 
            /* [retval][out] */ IHeightDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcDimensions( 
            /* [retval][out] */ IArcDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakRadialDimensions( 
            /* [retval][out] */ IBreakRadialDimensions __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Roughs( 
            /* [retval][out] */ IRoughs __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Leaders( 
            /* [retval][out] */ ILeaders __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Bases( 
            /* [retval][out] */ IBases __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tolerances( 
            /* [retval][out] */ ITolerances __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingTables( 
            /* [retval][out] */ IDrawingTables __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutLines( 
            /* [retval][out] */ ICutLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewPointers( 
            /* [retval][out] */ IViewPointers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CentreMarkers( 
            /* [retval][out] */ ICentreMarkers __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemoteElements( 
            /* [retval][out] */ IRemoteElements __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AxisLines( 
            /* [retval][out] */ IAxisLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WaveLines( 
            /* [retval][out] */ IWaveLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BrokenLines( 
            /* [retval][out] */ IBrokenLines __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISymbols2DContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISymbols2DContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISymbols2DContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ ILineDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RadialDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IRadialDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DiametralDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IDiametralDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AngleDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IAngleDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakLineDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IBreakLineDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HeightDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IHeightDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArcDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IArcDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakRadialDimensions )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IBreakRadialDimensions __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Roughs )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IRoughs __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Leaders )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ ILeaders __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Bases )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IBases __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tolerances )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ ITolerances __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingTables )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IDrawingTables __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutLines )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ ICutLines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewPointers )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IViewPointers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CentreMarkers )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ ICentreMarkers __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RemoteElements )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IRemoteElements __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AxisLines )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IAxisLines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WaveLines )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IWaveLines __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BrokenLines )( 
            ISymbols2DContainer __RPC_FAR * This,
            /* [retval][out] */ IBrokenLines __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } ISymbols2DContainerVtbl;

    interface ISymbols2DContainer
    {
        CONST_VTBL struct ISymbols2DContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISymbols2DContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISymbols2DContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISymbols2DContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISymbols2DContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISymbols2DContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISymbols2DContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISymbols2DContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISymbols2DContainer_get_LineDimensions(This,PVal)	\
    (This)->lpVtbl -> get_LineDimensions(This,PVal)

#define ISymbols2DContainer_get_RadialDimensions(This,PVal)	\
    (This)->lpVtbl -> get_RadialDimensions(This,PVal)

#define ISymbols2DContainer_get_DiametralDimensions(This,PVal)	\
    (This)->lpVtbl -> get_DiametralDimensions(This,PVal)

#define ISymbols2DContainer_get_AngleDimensions(This,PVal)	\
    (This)->lpVtbl -> get_AngleDimensions(This,PVal)

#define ISymbols2DContainer_get_BreakLineDimensions(This,PVal)	\
    (This)->lpVtbl -> get_BreakLineDimensions(This,PVal)

#define ISymbols2DContainer_get_HeightDimensions(This,PVal)	\
    (This)->lpVtbl -> get_HeightDimensions(This,PVal)

#define ISymbols2DContainer_get_ArcDimensions(This,PVal)	\
    (This)->lpVtbl -> get_ArcDimensions(This,PVal)

#define ISymbols2DContainer_get_BreakRadialDimensions(This,PVal)	\
    (This)->lpVtbl -> get_BreakRadialDimensions(This,PVal)

#define ISymbols2DContainer_get_Roughs(This,PVal)	\
    (This)->lpVtbl -> get_Roughs(This,PVal)

#define ISymbols2DContainer_get_Leaders(This,PVal)	\
    (This)->lpVtbl -> get_Leaders(This,PVal)

#define ISymbols2DContainer_get_Bases(This,PVal)	\
    (This)->lpVtbl -> get_Bases(This,PVal)

#define ISymbols2DContainer_get_Tolerances(This,PVal)	\
    (This)->lpVtbl -> get_Tolerances(This,PVal)

#define ISymbols2DContainer_get_DrawingTables(This,PVal)	\
    (This)->lpVtbl -> get_DrawingTables(This,PVal)

#define ISymbols2DContainer_get_CutLines(This,PVal)	\
    (This)->lpVtbl -> get_CutLines(This,PVal)

#define ISymbols2DContainer_get_ViewPointers(This,PVal)	\
    (This)->lpVtbl -> get_ViewPointers(This,PVal)

#define ISymbols2DContainer_get_CentreMarkers(This,PVal)	\
    (This)->lpVtbl -> get_CentreMarkers(This,PVal)

#define ISymbols2DContainer_get_RemoteElements(This,PVal)	\
    (This)->lpVtbl -> get_RemoteElements(This,PVal)

#define ISymbols2DContainer_get_AxisLines(This,PVal)	\
    (This)->lpVtbl -> get_AxisLines(This,PVal)

#define ISymbols2DContainer_get_WaveLines(This,PVal)	\
    (This)->lpVtbl -> get_WaveLines(This,PVal)

#define ISymbols2DContainer_get_BrokenLines(This,PVal)	\
    (This)->lpVtbl -> get_BrokenLines(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_LineDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ ILineDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_LineDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_RadialDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IRadialDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_RadialDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_DiametralDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IDiametralDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_DiametralDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_AngleDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IAngleDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_AngleDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_BreakLineDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IBreakLineDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_BreakLineDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_HeightDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IHeightDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_HeightDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_ArcDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IArcDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_ArcDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_BreakRadialDimensions_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IBreakRadialDimensions __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_BreakRadialDimensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_Roughs_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IRoughs __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_Roughs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_Leaders_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ ILeaders __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_Leaders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_Bases_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IBases __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_Bases_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_Tolerances_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ ITolerances __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_Tolerances_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_DrawingTables_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IDrawingTables __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_DrawingTables_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_CutLines_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ ICutLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_CutLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_ViewPointers_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IViewPointers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_ViewPointers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_CentreMarkers_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ ICentreMarkers __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_CentreMarkers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_RemoteElements_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IRemoteElements __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_RemoteElements_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_AxisLines_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IAxisLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_AxisLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_WaveLines_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IWaveLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_WaveLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISymbols2DContainer_get_BrokenLines_Proxy( 
    ISymbols2DContainer __RPC_FAR * This,
    /* [retval][out] */ IBrokenLines __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ISymbols2DContainer_get_BrokenLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISymbols2DContainer_INTERFACE_DEFINED__ */


#ifndef __IRadialDimension_INTERFACE_DEFINED__
#define __IRadialDimension_INTERFACE_DEFINED__

/* interface IRadialDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRadialDimension,0x712A9437,0xD772,0x4eae,0xAF,0x83,0xAB,0xC9,0xC2,0x2E,0xB2,0x81);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("712A9437-D772-4eae-AF83-ABC9C22EB281")
    IRadialDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRadialDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRadialDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRadialDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRadialDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        END_INTERFACE
    } IRadialDimensionVtbl;

    interface IRadialDimension
    {
        CONST_VTBL struct IRadialDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRadialDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRadialDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRadialDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRadialDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRadialDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRadialDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRadialDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRadialDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRadialDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRadialDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRadialDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRadialDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IRadialDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IRadialDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IRadialDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IRadialDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IRadialDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IRadialDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IRadialDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IRadialDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IRadialDimension_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IRadialDimension_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IRadialDimension_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IRadialDimension_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IRadialDimension_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IRadialDimension_put_Radius(This,Value)	\
    (This)->lpVtbl -> put_Radius(This,Value)

#define IRadialDimension_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IRadialDimension_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IRadialDimension_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IRadialDimension_put_BaseObject(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject(This,Object1)

#define IRadialDimension_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IRadialDimension_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension_get_Xc_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension_put_Xc_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRadialDimension_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension_get_Yc_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension_put_Yc_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRadialDimension_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension_get_Radius_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension_put_Radius_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRadialDimension_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension_get_DimensionType_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension_put_DimensionType_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRadialDimension_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension_get_BaseObject_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IRadialDimension_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension_put_BaseObject_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IRadialDimension_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimension_get_Angle_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRadialDimension_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRadialDimension_put_Angle_Proxy( 
    IRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRadialDimension_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRadialDimension_INTERFACE_DEFINED__ */


#ifndef __IRadialDimensions_INTERFACE_DEFINED__
#define __IRadialDimensions_INTERFACE_DEFINED__

/* interface IRadialDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRadialDimensions,0x12D26993,0x449E,0x42e2,0xA9,0x09,0xB0,0x47,0xAF,0xD6,0xE2,0x7D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("12D26993-449E-42e2-A909-B047AFD6E27D")
    IRadialDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RadialDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRadialDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRadialDimension __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRadialDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRadialDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRadialDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRadialDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRadialDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRadialDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRadialDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRadialDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRadialDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RadialDimension )( 
            IRadialDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRadialDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IRadialDimension __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IRadialDimensionsVtbl;

    interface IRadialDimensions
    {
        CONST_VTBL struct IRadialDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRadialDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRadialDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRadialDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRadialDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRadialDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRadialDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRadialDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRadialDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRadialDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRadialDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRadialDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRadialDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRadialDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRadialDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRadialDimensions_get_RadialDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_RadialDimension(This,Index,Result)

#define IRadialDimensions_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRadialDimensions_get_RadialDimension_Proxy( 
    IRadialDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRadialDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRadialDimensions_get_RadialDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRadialDimensions_Add_Proxy( 
    IRadialDimensions __RPC_FAR * This,
    /* [retval][out] */ IRadialDimension __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IRadialDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRadialDimensions_INTERFACE_DEFINED__ */


#ifndef __IBreakRadialDimension_INTERFACE_DEFINED__
#define __IBreakRadialDimension_INTERFACE_DEFINED__

/* interface IBreakRadialDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBreakRadialDimension,0x88491537,0x9E93,0x42f3,0x86,0x1C,0x76,0x1A,0x75,0xBB,0x89,0xD6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("88491537-9E93-42f3-861C-761A75BB89D6")
    IBreakRadialDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakLength( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOnLine( 
            /* [retval][out] */ /* external definition not present */ ksDimensionTextPosEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextOnLine( 
            /* [in] */ /* external definition not present */ ksDimensionTextPosEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBreakRadialDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBreakRadialDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBreakRadialDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakLength )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakLength )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextOnLine )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDimensionTextPosEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextOnLine )( 
            IBreakRadialDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDimensionTextPosEnum Value);
        
        END_INTERFACE
    } IBreakRadialDimensionVtbl;

    interface IBreakRadialDimension
    {
        CONST_VTBL struct IBreakRadialDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBreakRadialDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBreakRadialDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBreakRadialDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBreakRadialDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBreakRadialDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBreakRadialDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBreakRadialDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBreakRadialDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBreakRadialDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBreakRadialDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBreakRadialDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBreakRadialDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBreakRadialDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBreakRadialDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBreakRadialDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBreakRadialDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBreakRadialDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBreakRadialDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBreakRadialDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBreakRadialDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBreakRadialDimension_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IBreakRadialDimension_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IBreakRadialDimension_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IBreakRadialDimension_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IBreakRadialDimension_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IBreakRadialDimension_put_Radius(This,Value)	\
    (This)->lpVtbl -> put_Radius(This,Value)

#define IBreakRadialDimension_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IBreakRadialDimension_put_BaseObject(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject(This,Object1)

#define IBreakRadialDimension_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IBreakRadialDimension_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#define IBreakRadialDimension_get_BreakLength(This,PVal)	\
    (This)->lpVtbl -> get_BreakLength(This,PVal)

#define IBreakRadialDimension_put_BreakLength(This,Value)	\
    (This)->lpVtbl -> put_BreakLength(This,Value)

#define IBreakRadialDimension_get_TextOnLine(This,PVal)	\
    (This)->lpVtbl -> get_TextOnLine(This,PVal)

#define IBreakRadialDimension_put_TextOnLine(This,Value)	\
    (This)->lpVtbl -> put_TextOnLine(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_Xc_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakRadialDimension_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_Xc_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakRadialDimension_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_Yc_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakRadialDimension_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_Yc_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakRadialDimension_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_Radius_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakRadialDimension_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_Radius_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakRadialDimension_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_BaseObject_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IBreakRadialDimension_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_BaseObject_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IBreakRadialDimension_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_Angle_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakRadialDimension_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_Angle_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakRadialDimension_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_BreakLength_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakRadialDimension_get_BreakLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_BreakLength_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakRadialDimension_put_BreakLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_get_TextOnLine_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksDimensionTextPosEnum __RPC_FAR *PVal);


void __RPC_STUB IBreakRadialDimension_get_TextOnLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimension_put_TextOnLine_Proxy( 
    IBreakRadialDimension __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksDimensionTextPosEnum Value);


void __RPC_STUB IBreakRadialDimension_put_TextOnLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBreakRadialDimension_INTERFACE_DEFINED__ */


#ifndef __IBreakRadialDimensions_INTERFACE_DEFINED__
#define __IBreakRadialDimensions_INTERFACE_DEFINED__

/* interface IBreakRadialDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBreakRadialDimensions,0xE2181A3E,0x5417,0x4d73,0xAB,0x65,0x98,0x3D,0xED,0x34,0x38,0xE0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E2181A3E-5417-4d73-AB65-983DED3438E0")
    IBreakRadialDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakRadialDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBreakRadialDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBreakRadialDimension __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBreakRadialDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBreakRadialDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBreakRadialDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakRadialDimension )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBreakRadialDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBreakRadialDimensions __RPC_FAR * This,
            /* [retval][out] */ IBreakRadialDimension __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IBreakRadialDimensionsVtbl;

    interface IBreakRadialDimensions
    {
        CONST_VTBL struct IBreakRadialDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBreakRadialDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBreakRadialDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBreakRadialDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBreakRadialDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBreakRadialDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBreakRadialDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBreakRadialDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBreakRadialDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBreakRadialDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBreakRadialDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBreakRadialDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBreakRadialDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBreakRadialDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBreakRadialDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBreakRadialDimensions_get_BreakRadialDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_BreakRadialDimension(This,Index,Result)

#define IBreakRadialDimensions_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimensions_get_BreakRadialDimension_Proxy( 
    IBreakRadialDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBreakRadialDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBreakRadialDimensions_get_BreakRadialDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakRadialDimensions_Add_Proxy( 
    IBreakRadialDimensions __RPC_FAR * This,
    /* [retval][out] */ IBreakRadialDimension __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IBreakRadialDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBreakRadialDimensions_INTERFACE_DEFINED__ */


#ifndef __IDiametralDimension_INTERFACE_DEFINED__
#define __IDiametralDimension_INTERFACE_DEFINED__

/* interface IDiametralDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDiametralDimension,0x2B4CE92F,0x438D,0x4d3e,0x8F,0x8D,0x4D,0x14,0xE5,0xD0,0xE2,0x14);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2B4CE92F-438D-4d3e-8F8D-4D14E5D0E214")
    IDiametralDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDiametralDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDiametralDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDiametralDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDiametralDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IDiametralDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IDiametralDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        END_INTERFACE
    } IDiametralDimensionVtbl;

    interface IDiametralDimension
    {
        CONST_VTBL struct IDiametralDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDiametralDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDiametralDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDiametralDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDiametralDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDiametralDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDiametralDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDiametralDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDiametralDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDiametralDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDiametralDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDiametralDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDiametralDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IDiametralDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IDiametralDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IDiametralDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IDiametralDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IDiametralDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IDiametralDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IDiametralDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IDiametralDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IDiametralDimension_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IDiametralDimension_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IDiametralDimension_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IDiametralDimension_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IDiametralDimension_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IDiametralDimension_put_Radius(This,Value)	\
    (This)->lpVtbl -> put_Radius(This,Value)

#define IDiametralDimension_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IDiametralDimension_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IDiametralDimension_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IDiametralDimension_put_BaseObject(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject(This,Object1)

#define IDiametralDimension_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IDiametralDimension_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_get_Xc_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_put_Xc_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDiametralDimension_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_get_Yc_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_put_Yc_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDiametralDimension_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_get_Radius_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_put_Radius_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDiametralDimension_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_get_DimensionType_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_put_DimensionType_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IDiametralDimension_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_get_BaseObject_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IDiametralDimension_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_put_BaseObject_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IDiametralDimension_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_get_Angle_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDiametralDimension_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDiametralDimension_put_Angle_Proxy( 
    IDiametralDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDiametralDimension_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDiametralDimension_INTERFACE_DEFINED__ */


#ifndef __IDiametralDimensions_INTERFACE_DEFINED__
#define __IDiametralDimensions_INTERFACE_DEFINED__

/* interface IDiametralDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDiametralDimensions,0x8E45FEB9,0x7BCD,0x4c9f,0x97,0x67,0x32,0x07,0x36,0x98,0x06,0x62);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8E45FEB9-7BCD-4c9f-9767-320736980662")
    IDiametralDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DiametralDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDiametralDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IDiametralDimension __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDiametralDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDiametralDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDiametralDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DiametralDimension )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDiametralDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDiametralDimensions __RPC_FAR * This,
            /* [retval][out] */ IDiametralDimension __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IDiametralDimensionsVtbl;

    interface IDiametralDimensions
    {
        CONST_VTBL struct IDiametralDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDiametralDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDiametralDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDiametralDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDiametralDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDiametralDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDiametralDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDiametralDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDiametralDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDiametralDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDiametralDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDiametralDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDiametralDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDiametralDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDiametralDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IDiametralDimensions_get_DiametralDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_DiametralDimension(This,Index,Result)

#define IDiametralDimensions_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDiametralDimensions_get_DiametralDimension_Proxy( 
    IDiametralDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDiametralDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDiametralDimensions_get_DiametralDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDiametralDimensions_Add_Proxy( 
    IDiametralDimensions __RPC_FAR * This,
    /* [retval][out] */ IDiametralDimension __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IDiametralDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDiametralDimensions_INTERFACE_DEFINED__ */


#ifndef __ILineDimension_INTERFACE_DEFINED__
#define __ILineDimension_INTERFACE_DEFINED__

/* interface ILineDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILineDimension,0xA3767BDA,0xE605,0x4fc1,0x98,0x8D,0x81,0x80,0x9D,0xEB,0x36,0xF4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A3767BDA-E605-4fc1-988D-81809DEB36F4")
    ILineDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Orientation( 
            /* [retval][out] */ /* external definition not present */ ksLineDimensionOrientationEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Orientation( 
            /* [in] */ /* external definition not present */ ksLineDimensionOrientationEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILineDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILineDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILineDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Orientation )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLineDimensionOrientationEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Orientation )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksLineDimensionOrientationEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ILineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ILineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        END_INTERFACE
    } ILineDimensionVtbl;

    interface ILineDimension
    {
        CONST_VTBL struct ILineDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILineDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILineDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILineDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILineDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILineDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILineDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILineDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILineDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILineDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILineDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILineDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILineDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ILineDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ILineDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ILineDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ILineDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ILineDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ILineDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ILineDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ILineDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ILineDimension_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define ILineDimension_put_X1(This,Value)	\
    (This)->lpVtbl -> put_X1(This,Value)

#define ILineDimension_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define ILineDimension_put_Y1(This,Value)	\
    (This)->lpVtbl -> put_Y1(This,Value)

#define ILineDimension_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define ILineDimension_put_X2(This,Value)	\
    (This)->lpVtbl -> put_X2(This,Value)

#define ILineDimension_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define ILineDimension_put_Y2(This,Value)	\
    (This)->lpVtbl -> put_Y2(This,Value)

#define ILineDimension_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define ILineDimension_put_X3(This,Value)	\
    (This)->lpVtbl -> put_X3(This,Value)

#define ILineDimension_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#define ILineDimension_put_Y3(This,Value)	\
    (This)->lpVtbl -> put_Y3(This,Value)

#define ILineDimension_get_ShelfX(This,PVal)	\
    (This)->lpVtbl -> get_ShelfX(This,PVal)

#define ILineDimension_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define ILineDimension_get_ShelfY(This,PVal)	\
    (This)->lpVtbl -> get_ShelfY(This,PVal)

#define ILineDimension_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#define ILineDimension_get_Orientation(This,PVal)	\
    (This)->lpVtbl -> get_Orientation(This,PVal)

#define ILineDimension_put_Orientation(This,Value)	\
    (This)->lpVtbl -> put_Orientation(This,Value)

#define ILineDimension_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ILineDimension_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_X1_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_X1_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_Y1_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_Y1_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_X2_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_X2_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_Y2_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_Y2_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_X3_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_X3_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_Y3_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_Y3_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_ShelfX_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_ShelfX_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_ShelfY_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_ShelfY_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_Orientation_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLineDimensionOrientationEnum __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_Orientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_Orientation_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksLineDimensionOrientationEnum Value);


void __RPC_STUB ILineDimension_put_Orientation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimension_get_Angle_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILineDimension_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILineDimension_put_Angle_Proxy( 
    ILineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ILineDimension_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILineDimension_INTERFACE_DEFINED__ */


#ifndef __ILineDimensions_INTERFACE_DEFINED__
#define __ILineDimensions_INTERFACE_DEFINED__

/* interface ILineDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILineDimensions,0xA6F6A18A,0x78FA,0x4a77,0xBB,0x75,0x90,0x64,0x7E,0x0C,0x54,0x5C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A6F6A18A-78FA-4a77-BB75-90647E0C545C")
    ILineDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILineDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILineDimension __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILineDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILineDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILineDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILineDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILineDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILineDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILineDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILineDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineDimension )( 
            ILineDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILineDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILineDimensions __RPC_FAR * This,
            /* [retval][out] */ ILineDimension __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ILineDimensionsVtbl;

    interface ILineDimensions
    {
        CONST_VTBL struct ILineDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILineDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILineDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILineDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILineDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILineDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILineDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILineDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILineDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILineDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILineDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILineDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILineDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILineDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILineDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILineDimensions_get_LineDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_LineDimension(This,Index,Result)

#define ILineDimensions_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILineDimensions_get_LineDimension_Proxy( 
    ILineDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILineDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILineDimensions_get_LineDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILineDimensions_Add_Proxy( 
    ILineDimensions __RPC_FAR * This,
    /* [retval][out] */ ILineDimension __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ILineDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILineDimensions_INTERFACE_DEFINED__ */


#ifndef __IBreakLineDimension_INTERFACE_DEFINED__
#define __IBreakLineDimension_INTERFACE_DEFINED__

/* interface IBreakLineDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBreakLineDimension,0x61164A26,0x855C,0x4220,0x88,0xED,0xC2,0xBD,0xAF,0x49,0xB2,0xDB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("61164A26-855C-4220-88ED-C2BDAF49B2DB")
    IBreakLineDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBreakLineDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBreakLineDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBreakLineDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IBreakLineDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        END_INTERFACE
    } IBreakLineDimensionVtbl;

    interface IBreakLineDimension
    {
        CONST_VTBL struct IBreakLineDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBreakLineDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBreakLineDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBreakLineDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBreakLineDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBreakLineDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBreakLineDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBreakLineDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBreakLineDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBreakLineDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBreakLineDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBreakLineDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBreakLineDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBreakLineDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBreakLineDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBreakLineDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBreakLineDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBreakLineDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBreakLineDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBreakLineDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBreakLineDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBreakLineDimension_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IBreakLineDimension_put_X1(This,Value)	\
    (This)->lpVtbl -> put_X1(This,Value)

#define IBreakLineDimension_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IBreakLineDimension_put_Y1(This,Value)	\
    (This)->lpVtbl -> put_Y1(This,Value)

#define IBreakLineDimension_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IBreakLineDimension_put_X2(This,Value)	\
    (This)->lpVtbl -> put_X2(This,Value)

#define IBreakLineDimension_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IBreakLineDimension_put_Y2(This,Value)	\
    (This)->lpVtbl -> put_Y2(This,Value)

#define IBreakLineDimension_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IBreakLineDimension_put_X3(This,Value)	\
    (This)->lpVtbl -> put_X3(This,Value)

#define IBreakLineDimension_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#define IBreakLineDimension_put_Y3(This,Value)	\
    (This)->lpVtbl -> put_Y3(This,Value)

#define IBreakLineDimension_get_ShelfX(This,PVal)	\
    (This)->lpVtbl -> get_ShelfX(This,PVal)

#define IBreakLineDimension_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define IBreakLineDimension_get_ShelfY(This,PVal)	\
    (This)->lpVtbl -> get_ShelfY(This,PVal)

#define IBreakLineDimension_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#define IBreakLineDimension_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IBreakLineDimension_put_BaseObject(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject(This,Object1)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_X1_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_X1_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_Y1_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_Y1_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_X2_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_X2_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_Y2_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_Y2_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_X3_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_X3_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_Y3_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_Y3_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_ShelfX_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_ShelfX_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_ShelfY_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBreakLineDimension_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_ShelfY_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBreakLineDimension_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_get_BaseObject_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IBreakLineDimension_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBreakLineDimension_put_BaseObject_Proxy( 
    IBreakLineDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IBreakLineDimension_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBreakLineDimension_INTERFACE_DEFINED__ */


#ifndef __IBreakLineDimensions_INTERFACE_DEFINED__
#define __IBreakLineDimensions_INTERFACE_DEFINED__

/* interface IBreakLineDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBreakLineDimensions,0x4125169F,0x3EA8,0x4ac0,0x9E,0x1B,0x55,0x82,0xD6,0x26,0x00,0xC4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4125169F-3EA8-4ac0-9E1B-5582D62600C4")
    IBreakLineDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakLineDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBreakLineDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBreakLineDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBreakLineDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBreakLineDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBreakLineDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakLineDimension )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBreakLineDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBreakLineDimensions __RPC_FAR * This,
            /* [retval][out] */ IBreakLineDimension __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IBreakLineDimensionsVtbl;

    interface IBreakLineDimensions
    {
        CONST_VTBL struct IBreakLineDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBreakLineDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBreakLineDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBreakLineDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBreakLineDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBreakLineDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBreakLineDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBreakLineDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBreakLineDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBreakLineDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBreakLineDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBreakLineDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBreakLineDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBreakLineDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBreakLineDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBreakLineDimensions_get_BreakLineDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_BreakLineDimension(This,Index,Result)

#define IBreakLineDimensions_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBreakLineDimensions_get_BreakLineDimension_Proxy( 
    IBreakLineDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBreakLineDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBreakLineDimensions_get_BreakLineDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBreakLineDimensions_Add_Proxy( 
    IBreakLineDimensions __RPC_FAR * This,
    /* [retval][out] */ IBreakLineDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBreakLineDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBreakLineDimensions_INTERFACE_DEFINED__ */


#ifndef __IHeightDimension_INTERFACE_DEFINED__
#define __IHeightDimension_INTERFACE_DEFINED__

/* interface IHeightDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IHeightDimension,0x938BE57F,0x55FF,0x469f,0x82,0xA5,0xB1,0xCD,0x6C,0xCF,0x83,0x40);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("938BE57F-55FF-469f-82A5-B1CD6CCF8340")
    IHeightDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ /* external definition not present */ ksHeightDimTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ /* external definition not present */ ksHeightDimTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHeightDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IHeightDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IHeightDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IHeightDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksHeightDimTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksHeightDimTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IHeightDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IHeightDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        END_INTERFACE
    } IHeightDimensionVtbl;

    interface IHeightDimension
    {
        CONST_VTBL struct IHeightDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHeightDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHeightDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHeightDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHeightDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHeightDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHeightDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHeightDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHeightDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IHeightDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IHeightDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IHeightDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IHeightDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IHeightDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IHeightDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IHeightDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IHeightDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IHeightDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IHeightDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IHeightDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IHeightDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IHeightDimension_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IHeightDimension_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IHeightDimension_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IHeightDimension_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IHeightDimension_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IHeightDimension_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IHeightDimension_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IHeightDimension_put_X1(This,Value)	\
    (This)->lpVtbl -> put_X1(This,Value)

#define IHeightDimension_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IHeightDimension_put_Y1(This,Value)	\
    (This)->lpVtbl -> put_Y1(This,Value)

#define IHeightDimension_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IHeightDimension_put_X2(This,Value)	\
    (This)->lpVtbl -> put_X2(This,Value)

#define IHeightDimension_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IHeightDimension_put_Y2(This,Value)	\
    (This)->lpVtbl -> put_Y2(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_DimensionType_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksHeightDimTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_DimensionType_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksHeightDimTypeEnum Value);


void __RPC_STUB IHeightDimension_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_X_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_X_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHeightDimension_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_Y_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_Y_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHeightDimension_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_X1_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_X1_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHeightDimension_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_Y1_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_Y1_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHeightDimension_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_X2_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_X2_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHeightDimension_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimension_get_Y2_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IHeightDimension_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHeightDimension_put_Y2_Proxy( 
    IHeightDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHeightDimension_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHeightDimension_INTERFACE_DEFINED__ */


#ifndef __IHeightDimensions_INTERFACE_DEFINED__
#define __IHeightDimensions_INTERFACE_DEFINED__

/* interface IHeightDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IHeightDimensions,0x3A56D35C,0x3242,0x4c49,0xBA,0x99,0xCF,0x79,0x0E,0xB1,0x03,0x56);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3A56D35C-3242-4c49-BA99-CF790EB10356")
    IHeightDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HeightDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IHeightDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IHeightDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHeightDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IHeightDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IHeightDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IHeightDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IHeightDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IHeightDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IHeightDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IHeightDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IHeightDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HeightDimension )( 
            IHeightDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IHeightDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IHeightDimensions __RPC_FAR * This,
            /* [retval][out] */ IHeightDimension __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IHeightDimensionsVtbl;

    interface IHeightDimensions
    {
        CONST_VTBL struct IHeightDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHeightDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHeightDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHeightDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHeightDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHeightDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHeightDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHeightDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHeightDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IHeightDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IHeightDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IHeightDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IHeightDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IHeightDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IHeightDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IHeightDimensions_get_HeightDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_HeightDimension(This,Index,Result)

#define IHeightDimensions_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHeightDimensions_get_HeightDimension_Proxy( 
    IHeightDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IHeightDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IHeightDimensions_get_HeightDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IHeightDimensions_Add_Proxy( 
    IHeightDimensions __RPC_FAR * This,
    /* [retval][out] */ IHeightDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IHeightDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHeightDimensions_INTERFACE_DEFINED__ */


#ifndef __IAngleDimension_INTERFACE_DEFINED__
#define __IAngleDimension_INTERFACE_DEFINED__

/* interface IAngleDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAngleDimension,0x0F2CE9EC,0x5D2A,0x4b21,0xB9,0x6A,0x46,0x20,0x1C,0x12,0x0E,0xD1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0F2CE9EC-5D2A-4b21-B96A-46201C120ED1")
    IAngleDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject1( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject1( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject2( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject2( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAngleDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAngleDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAngleDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAngleDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject1 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject2 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IAngleDimensionVtbl;

    interface IAngleDimension
    {
        CONST_VTBL struct IAngleDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAngleDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAngleDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAngleDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAngleDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAngleDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAngleDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAngleDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAngleDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAngleDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAngleDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAngleDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAngleDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IAngleDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IAngleDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IAngleDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IAngleDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IAngleDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IAngleDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IAngleDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IAngleDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IAngleDimension_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IAngleDimension_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IAngleDimension_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IAngleDimension_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IAngleDimension_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define IAngleDimension_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IAngleDimension_put_Angle1(This,NewVal)	\
    (This)->lpVtbl -> put_Angle1(This,NewVal)

#define IAngleDimension_get_Angle1(This,PVal)	\
    (This)->lpVtbl -> get_Angle1(This,PVal)

#define IAngleDimension_put_Angle2(This,NewVal)	\
    (This)->lpVtbl -> put_Angle2(This,NewVal)

#define IAngleDimension_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define IAngleDimension_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IAngleDimension_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IAngleDimension_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IAngleDimension_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IAngleDimension_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IAngleDimension_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IAngleDimension_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IAngleDimension_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IAngleDimension_get_BaseObject1(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject1(This,Object1)

#define IAngleDimension_put_BaseObject1(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject1(This,Object1)

#define IAngleDimension_get_BaseObject2(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject2(This,Object1)

#define IAngleDimension_put_BaseObject2(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject2(This,Object1)

#define IAngleDimension_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IAngleDimension_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IAngleDimension_get_ShelfX(This,PVal)	\
    (This)->lpVtbl -> get_ShelfX(This,PVal)

#define IAngleDimension_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define IAngleDimension_get_ShelfY(This,PVal)	\
    (This)->lpVtbl -> get_ShelfY(This,PVal)

#define IAngleDimension_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#define IAngleDimension_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IAngleDimension_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IAngleDimension_put_X3(This,NewVal)	\
    (This)->lpVtbl -> put_X3(This,NewVal)

#define IAngleDimension_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IAngleDimension_put_Y3(This,NewVal)	\
    (This)->lpVtbl -> put_Y3(This,NewVal)

#define IAngleDimension_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Xc_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Xc_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IAngleDimension_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Yc_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Yc_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IAngleDimension_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Radius_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Radius_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Angle1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Angle1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Angle2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Angle2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_X1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_X1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Y1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Y1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_X2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_X2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Y2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Y2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_BaseObject1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IAngleDimension_get_BaseObject1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_BaseObject1_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IAngleDimension_put_BaseObject1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_BaseObject2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IAngleDimension_get_BaseObject2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_BaseObject2_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IAngleDimension_put_BaseObject2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_DimensionType_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_DimensionType_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value);


void __RPC_STUB IAngleDimension_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_ShelfX_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_ShelfX_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IAngleDimension_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_ShelfY_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_ShelfY_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IAngleDimension_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Direction_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAngleDimension_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Direction_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_X3_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_X3_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAngleDimension_put_Y3_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAngleDimension_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimension_get_Y3_Proxy( 
    IAngleDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAngleDimension_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAngleDimension_INTERFACE_DEFINED__ */


#ifndef __IAngleDimensions_INTERFACE_DEFINED__
#define __IAngleDimensions_INTERFACE_DEFINED__

/* interface IAngleDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAngleDimensions,0xDF9ABB77,0xBBB6,0x4b29,0xA0,0xE0,0x81,0xDC,0xFD,0x52,0x5C,0x2E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DF9ABB77-BBB6-4b29-A0E0-81DCFD525C2E")
    IAngleDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AngleDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAngleDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum DimType,
            /* [retval][out] */ IAngleDimension __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAngleDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAngleDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAngleDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAngleDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAngleDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAngleDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAngleDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAngleDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAngleDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAngleDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AngleDimension )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAngleDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IAngleDimensions __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum DimType,
            /* [retval][out] */ IAngleDimension __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IAngleDimensionsVtbl;

    interface IAngleDimensions
    {
        CONST_VTBL struct IAngleDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAngleDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAngleDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAngleDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAngleDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAngleDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAngleDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAngleDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAngleDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAngleDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAngleDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAngleDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAngleDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAngleDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAngleDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IAngleDimensions_get_AngleDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_AngleDimension(This,Index,Result)

#define IAngleDimensions_Add(This,DimType,Value)	\
    (This)->lpVtbl -> Add(This,DimType,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAngleDimensions_get_AngleDimension_Proxy( 
    IAngleDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAngleDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAngleDimensions_get_AngleDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAngleDimensions_Add_Proxy( 
    IAngleDimensions __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DrawingObjectTypeEnum DimType,
    /* [retval][out] */ IAngleDimension __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IAngleDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAngleDimensions_INTERFACE_DEFINED__ */


#ifndef __IBreakAngleDimension_INTERFACE_DEFINED__
#define __IBreakAngleDimension_INTERFACE_DEFINED__

/* interface IBreakAngleDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBreakAngleDimension,0xF6ED408A,0xC2A8,0x47dd,0x8E,0xC3,0x01,0x1A,0x7A,0xD6,0x03,0x35);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F6ED408A-C2A8-47dd-8EC3-011A7AD60335")
    IBreakAngleDimension : public IAngleDimension
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IBreakAngleDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBreakAngleDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBreakAngleDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject1 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject2 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAngleDimTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAngleDimTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IBreakAngleDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IBreakAngleDimensionVtbl;

    interface IBreakAngleDimension
    {
        CONST_VTBL struct IBreakAngleDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBreakAngleDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBreakAngleDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBreakAngleDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBreakAngleDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBreakAngleDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBreakAngleDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBreakAngleDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBreakAngleDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBreakAngleDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBreakAngleDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBreakAngleDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBreakAngleDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBreakAngleDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBreakAngleDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBreakAngleDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBreakAngleDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBreakAngleDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBreakAngleDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBreakAngleDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBreakAngleDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBreakAngleDimension_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IBreakAngleDimension_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IBreakAngleDimension_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IBreakAngleDimension_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IBreakAngleDimension_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define IBreakAngleDimension_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IBreakAngleDimension_put_Angle1(This,NewVal)	\
    (This)->lpVtbl -> put_Angle1(This,NewVal)

#define IBreakAngleDimension_get_Angle1(This,PVal)	\
    (This)->lpVtbl -> get_Angle1(This,PVal)

#define IBreakAngleDimension_put_Angle2(This,NewVal)	\
    (This)->lpVtbl -> put_Angle2(This,NewVal)

#define IBreakAngleDimension_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define IBreakAngleDimension_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IBreakAngleDimension_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IBreakAngleDimension_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IBreakAngleDimension_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IBreakAngleDimension_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IBreakAngleDimension_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IBreakAngleDimension_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IBreakAngleDimension_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IBreakAngleDimension_get_BaseObject1(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject1(This,Object1)

#define IBreakAngleDimension_put_BaseObject1(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject1(This,Object1)

#define IBreakAngleDimension_get_BaseObject2(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject2(This,Object1)

#define IBreakAngleDimension_put_BaseObject2(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject2(This,Object1)

#define IBreakAngleDimension_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IBreakAngleDimension_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IBreakAngleDimension_get_ShelfX(This,PVal)	\
    (This)->lpVtbl -> get_ShelfX(This,PVal)

#define IBreakAngleDimension_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define IBreakAngleDimension_get_ShelfY(This,PVal)	\
    (This)->lpVtbl -> get_ShelfY(This,PVal)

#define IBreakAngleDimension_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#define IBreakAngleDimension_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IBreakAngleDimension_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IBreakAngleDimension_put_X3(This,NewVal)	\
    (This)->lpVtbl -> put_X3(This,NewVal)

#define IBreakAngleDimension_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IBreakAngleDimension_put_Y3(This,NewVal)	\
    (This)->lpVtbl -> put_Y3(This,NewVal)

#define IBreakAngleDimension_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IBreakAngleDimension_INTERFACE_DEFINED__ */


#ifndef __IArcDimension_INTERFACE_DEFINED__
#define __IArcDimension_INTERFACE_DEFINED__

/* interface IArcDimension */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IArcDimension,0x11487495,0xB18A,0x4877,0x9E,0x85,0x3D,0xC9,0x01,0x6D,0xF8,0xBD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("11487495-B18A-4877-9E85-3DC9016DF8BD")
    IArcDimension : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextPointer( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextPointer( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IArcDimensionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IArcDimension __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IArcDimension __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IArcDimension __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionType )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionType )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextPointer )( 
            IArcDimension __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextPointer )( 
            IArcDimension __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IArcDimensionVtbl;

    interface IArcDimension
    {
        CONST_VTBL struct IArcDimensionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IArcDimension_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IArcDimension_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IArcDimension_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IArcDimension_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IArcDimension_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IArcDimension_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IArcDimension_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IArcDimension_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IArcDimension_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IArcDimension_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IArcDimension_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IArcDimension_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IArcDimension_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IArcDimension_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IArcDimension_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IArcDimension_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IArcDimension_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IArcDimension_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IArcDimension_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IArcDimension_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IArcDimension_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IArcDimension_put_BaseObject(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject(This,Object1)

#define IArcDimension_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IArcDimension_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IArcDimension_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IArcDimension_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IArcDimension_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IArcDimension_put_X1(This,Value)	\
    (This)->lpVtbl -> put_X1(This,Value)

#define IArcDimension_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IArcDimension_put_Y1(This,Value)	\
    (This)->lpVtbl -> put_Y1(This,Value)

#define IArcDimension_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IArcDimension_put_X2(This,Value)	\
    (This)->lpVtbl -> put_X2(This,Value)

#define IArcDimension_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IArcDimension_put_Y2(This,Value)	\
    (This)->lpVtbl -> put_Y2(This,Value)

#define IArcDimension_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IArcDimension_put_X3(This,Value)	\
    (This)->lpVtbl -> put_X3(This,Value)

#define IArcDimension_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#define IArcDimension_put_Y3(This,Value)	\
    (This)->lpVtbl -> put_Y3(This,Value)

#define IArcDimension_get_ShelfX(This,PVal)	\
    (This)->lpVtbl -> get_ShelfX(This,PVal)

#define IArcDimension_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define IArcDimension_get_ShelfY(This,PVal)	\
    (This)->lpVtbl -> get_ShelfY(This,PVal)

#define IArcDimension_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#define IArcDimension_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IArcDimension_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IArcDimension_get_DimensionType(This,PVal)	\
    (This)->lpVtbl -> get_DimensionType(This,PVal)

#define IArcDimension_put_DimensionType(This,Value)	\
    (This)->lpVtbl -> put_DimensionType(This,Value)

#define IArcDimension_get_TextPointer(This,PVal)	\
    (This)->lpVtbl -> get_TextPointer(This,PVal)

#define IArcDimension_put_TextPointer(This,Value)	\
    (This)->lpVtbl -> put_TextPointer(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_BaseObject_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IArcDimension_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_BaseObject_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IArcDimension_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_Xc_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_Xc_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_Yc_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_Yc_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_X1_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_X1_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_Y1_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_Y1_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_X2_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_X2_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_Y2_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_Y2_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_X3_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_X3_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_Y3_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_Y3_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_ShelfX_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_ShelfX_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_ShelfY_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_ShelfY_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IArcDimension_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_Direction_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IArcDimension_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_Direction_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_DimensionType_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_DimensionType_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IArcDimension_put_DimensionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimension_get_TextPointer_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IArcDimension_get_TextPointer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IArcDimension_put_TextPointer_Proxy( 
    IArcDimension __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IArcDimension_put_TextPointer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IArcDimension_INTERFACE_DEFINED__ */


#ifndef __IArcDimensions_INTERFACE_DEFINED__
#define __IArcDimensions_INTERFACE_DEFINED__

/* interface IArcDimensions */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IArcDimensions,0xFE2755D9,0x48E2,0x44cc,0xBC,0x24,0x86,0xCF,0x86,0xBE,0x08,0xE2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FE2755D9-48E2-44cc-BC24-86CF86BE08E2")
    IArcDimensions : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArcDimension( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IArcDimension __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IArcDimension __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IArcDimensionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IArcDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IArcDimensions __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IArcDimensions __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IArcDimensions __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IArcDimensions __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IArcDimensions __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IArcDimensions __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IArcDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArcDimension )( 
            IArcDimensions __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IArcDimension __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IArcDimensions __RPC_FAR * This,
            /* [retval][out] */ IArcDimension __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IArcDimensionsVtbl;

    interface IArcDimensions
    {
        CONST_VTBL struct IArcDimensionsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IArcDimensions_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IArcDimensions_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IArcDimensions_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IArcDimensions_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IArcDimensions_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IArcDimensions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IArcDimensions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IArcDimensions_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IArcDimensions_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IArcDimensions_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IArcDimensions_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IArcDimensions_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IArcDimensions_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IArcDimensions_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IArcDimensions_get_ArcDimension(This,Index,Result)	\
    (This)->lpVtbl -> get_ArcDimension(This,Index,Result)

#define IArcDimensions_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IArcDimensions_get_ArcDimension_Proxy( 
    IArcDimensions __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IArcDimension __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IArcDimensions_get_ArcDimension_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IArcDimensions_Add_Proxy( 
    IArcDimensions __RPC_FAR * This,
    /* [retval][out] */ IArcDimension __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IArcDimensions_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IArcDimensions_INTERFACE_DEFINED__ */


#ifndef __IBranchs_INTERFACE_DEFINED__
#define __IBranchs_INTERFACE_DEFINED__

/* interface IBranchs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBranchs,0xC8A55AB3,0xD6DD,0x49b8,0x95,0xF0,0x71,0x64,0x75,0x85,0x5C,0x10);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C8A55AB3-D6DD-49b8-95F0-716475855C10")
    IBranchs : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X0( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X0( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y0( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y0( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchPoints( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPoints( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPointsCount( 
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchX( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchX( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchY( 
            /* [in] */ long Index,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchY( 
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranch( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBranchByPoint( 
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteBranch( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBranchsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBranchs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBranchs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBranchs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X0 )( 
            IBranchs __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X0 )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y0 )( 
            IBranchs __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y0 )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchCount )( 
            IBranchs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchPoints )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPoints )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPointsCount )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchX )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchX )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchY )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchY )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranch )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBranchByPoint )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteBranch )( 
            IBranchs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IBranchsVtbl;

    interface IBranchs
    {
        CONST_VTBL struct IBranchsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBranchs_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBranchs_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBranchs_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBranchs_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBranchs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBranchs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBranchs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBranchs_get_X0(This,Result)	\
    (This)->lpVtbl -> get_X0(This,Result)

#define IBranchs_put_X0(This,Value)	\
    (This)->lpVtbl -> put_X0(This,Value)

#define IBranchs_get_Y0(This,Result)	\
    (This)->lpVtbl -> get_Y0(This,Result)

#define IBranchs_put_Y0(This,Value)	\
    (This)->lpVtbl -> put_Y0(This,Value)

#define IBranchs_get_BranchCount(This,Result)	\
    (This)->lpVtbl -> get_BranchCount(This,Result)

#define IBranchs_put_BranchPoints(This,Index,Points)	\
    (This)->lpVtbl -> put_BranchPoints(This,Index,Points)

#define IBranchs_get_BranchPoints(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchPoints(This,Index,PVal)

#define IBranchs_get_BranchPointsCount(This,Index,Result)	\
    (This)->lpVtbl -> get_BranchPointsCount(This,Index,Result)

#define IBranchs_put_BranchX(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchX(This,Index,NewVal)

#define IBranchs_get_BranchX(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchX(This,Index,PVal)

#define IBranchs_put_BranchY(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchY(This,Index,NewVal)

#define IBranchs_get_BranchY(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchY(This,Index,PVal)

#define IBranchs_AddBranch(This,Index,Points,Result)	\
    (This)->lpVtbl -> AddBranch(This,Index,Points,Result)

#define IBranchs_AddBranchByPoint(This,Index,X,Y,Result)	\
    (This)->lpVtbl -> AddBranchByPoint(This,Index,X,Y,Result)

#define IBranchs_DeleteBranch(This,Index,Result)	\
    (This)->lpVtbl -> DeleteBranch(This,Index,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_X0_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBranchs_get_X0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBranchs_put_X0_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBranchs_put_X0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_Y0_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBranchs_get_Y0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBranchs_put_Y0_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBranchs_put_Y0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_BranchCount_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBranchs_get_BranchCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBranchs_put_BranchPoints_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Points);


void __RPC_STUB IBranchs_put_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_BranchPoints_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IBranchs_get_BranchPoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_BranchPointsCount_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBranchs_get_BranchPointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBranchs_put_BranchX_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB IBranchs_put_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_BranchX_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBranchs_get_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBranchs_put_BranchY_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double NewVal);


void __RPC_STUB IBranchs_put_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBranchs_get_BranchY_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBranchs_get_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs_AddBranch_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Points,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs_AddBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs_AddBranchByPoint_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs_AddBranchByPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBranchs_DeleteBranch_Proxy( 
    IBranchs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBranchs_DeleteBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBranchs_INTERFACE_DEFINED__ */


#ifndef __IBaseLeader_INTERFACE_DEFINED__
#define __IBaseLeader_INTERFACE_DEFINED__

/* interface IBaseLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBaseLeader,0x1AF590A9,0xC339,0x477a,0x9F,0x22,0x79,0x9C,0x04,0xD2,0x0B,0xB4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1AF590A9-C339-477a-9F22-799C04D20BB4")
    IBaseLeader : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ /* external definition not present */ ksArrowEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBaseLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBaseLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBaseLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBaseLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            IBaseLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            IBaseLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksArrowEnum Value);
        
        END_INTERFACE
    } IBaseLeaderVtbl;

    interface IBaseLeader
    {
        CONST_VTBL struct IBaseLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBaseLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBaseLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBaseLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBaseLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBaseLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBaseLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBaseLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBaseLeader_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBaseLeader_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBaseLeader_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBaseLeader_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBaseLeader_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBaseLeader_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBaseLeader_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBaseLeader_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBaseLeader_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBaseLeader_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBaseLeader_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBaseLeader_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBaseLeader_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBaseLeader_get_ArrowType(This,Result)	\
    (This)->lpVtbl -> get_ArrowType(This,Result)

#define IBaseLeader_put_ArrowType(This,Value)	\
    (This)->lpVtbl -> put_ArrowType(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBaseLeader_get_ArrowType_Proxy( 
    IBaseLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksArrowEnum __RPC_FAR *Result);


void __RPC_STUB IBaseLeader_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBaseLeader_put_ArrowType_Proxy( 
    IBaseLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksArrowEnum Value);


void __RPC_STUB IBaseLeader_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBaseLeader_INTERFACE_DEFINED__ */


#ifndef __ILeader_INTERFACE_DEFINED__
#define __ILeader_INTERFACE_DEFINED__

/* interface ILeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILeader,0xA7419920,0x06B8,0x4f34,0xAC,0x1E,0x9D,0x48,0xE0,0xED,0x9D,0xCB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A7419920-06B8-4f34-AC1E-9D48E0ED9DCB")
    ILeader : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignType( 
            /* [retval][out] */ /* external definition not present */ ksLeaderSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignType( 
            /* [in] */ /* external definition not present */ ksLeaderSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Arround( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Arround( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOnShelf( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUnderShelf( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOnBranch( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUnderBranch( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextAfterShelf( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchBegin( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchBegin( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParallelBranch( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ParallelBranch( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            ILeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignType )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksLeaderSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignType )( 
            ILeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksLeaderSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Arround )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Arround )( 
            ILeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextOnShelf )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnderShelf )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextOnBranch )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnderBranch )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextAfterShelf )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchBegin )( 
            ILeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchBegin )( 
            ILeader __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParallelBranch )( 
            ILeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ParallelBranch )( 
            ILeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        END_INTERFACE
    } ILeaderVtbl;

    interface ILeader
    {
        CONST_VTBL struct ILeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILeader_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define ILeader_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define ILeader_get_SignType(This,Result)	\
    (This)->lpVtbl -> get_SignType(This,Result)

#define ILeader_put_SignType(This,Value)	\
    (This)->lpVtbl -> put_SignType(This,Value)

#define ILeader_get_Arround(This,Result)	\
    (This)->lpVtbl -> get_Arround(This,Result)

#define ILeader_put_Arround(This,Value)	\
    (This)->lpVtbl -> put_Arround(This,Value)

#define ILeader_get_TextOnShelf(This,PVal)	\
    (This)->lpVtbl -> get_TextOnShelf(This,PVal)

#define ILeader_get_TextUnderShelf(This,PVal)	\
    (This)->lpVtbl -> get_TextUnderShelf(This,PVal)

#define ILeader_get_TextOnBranch(This,PVal)	\
    (This)->lpVtbl -> get_TextOnBranch(This,PVal)

#define ILeader_get_TextUnderBranch(This,PVal)	\
    (This)->lpVtbl -> get_TextUnderBranch(This,PVal)

#define ILeader_get_TextAfterShelf(This,PVal)	\
    (This)->lpVtbl -> get_TextAfterShelf(This,PVal)

#define ILeader_put_BranchBegin(This,Index,NewVal)	\
    (This)->lpVtbl -> put_BranchBegin(This,Index,NewVal)

#define ILeader_get_BranchBegin(This,Index,PVal)	\
    (This)->lpVtbl -> get_BranchBegin(This,Index,PVal)

#define ILeader_get_ParallelBranch(This,PVal)	\
    (This)->lpVtbl -> get_ParallelBranch(This,PVal)

#define ILeader_put_ParallelBranch(This,NewVal)	\
    (This)->lpVtbl -> put_ParallelBranch(This,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_ShelfDirection_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB ILeader_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILeader_put_ShelfDirection_Proxy( 
    ILeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB ILeader_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_SignType_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksLeaderSignEnum __RPC_FAR *Result);


void __RPC_STUB ILeader_get_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILeader_put_SignType_Proxy( 
    ILeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksLeaderSignEnum Value);


void __RPC_STUB ILeader_put_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_Arround_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ILeader_get_Arround_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILeader_put_Arround_Proxy( 
    ILeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ILeader_put_Arround_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_TextOnShelf_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILeader_get_TextOnShelf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_TextUnderShelf_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILeader_get_TextUnderShelf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_TextOnBranch_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILeader_get_TextOnBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_TextUnderBranch_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILeader_get_TextUnderBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_TextAfterShelf_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ILeader_get_TextAfterShelf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILeader_put_BranchBegin_Proxy( 
    ILeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILeader_put_BranchBegin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_BranchBegin_Proxy( 
    ILeader __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILeader_get_BranchBegin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeader_get_ParallelBranch_Proxy( 
    ILeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ILeader_get_ParallelBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILeader_put_ParallelBranch_Proxy( 
    ILeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ILeader_put_ParallelBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILeader_INTERFACE_DEFINED__ */


#ifndef __ILeaders_INTERFACE_DEFINED__
#define __ILeaders_INTERFACE_DEFINED__

/* interface ILeaders */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILeaders,0xBA2D820C,0x0DB9,0x47c6,0xA3,0x2D,0x34,0xC7,0xD8,0xBA,0x1B,0x2F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("BA2D820C-0DB9-47c6-A32D-34C7D8BA1B2F")
    ILeaders : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Leader( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBaseLeader __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum DimType,
            /* [retval][out] */ IBaseLeader __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILeadersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILeaders __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILeaders __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILeaders __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILeaders __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILeaders __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILeaders __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILeaders __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILeaders __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILeaders __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Leader )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBaseLeader __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILeaders __RPC_FAR * This,
            /* [in] */ /* external definition not present */ DrawingObjectTypeEnum DimType,
            /* [retval][out] */ IBaseLeader __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ILeadersVtbl;

    interface ILeaders
    {
        CONST_VTBL struct ILeadersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILeaders_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILeaders_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILeaders_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILeaders_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILeaders_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILeaders_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILeaders_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILeaders_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILeaders_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILeaders_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILeaders_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILeaders_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILeaders_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILeaders_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILeaders_get_Leader(This,Index,Result)	\
    (This)->lpVtbl -> get_Leader(This,Index,Result)

#define ILeaders_Add(This,DimType,Value)	\
    (This)->lpVtbl -> Add(This,DimType,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILeaders_get_Leader_Proxy( 
    ILeaders __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBaseLeader __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILeaders_get_Leader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILeaders_Add_Proxy( 
    ILeaders __RPC_FAR * This,
    /* [in] */ /* external definition not present */ DrawingObjectTypeEnum DimType,
    /* [retval][out] */ IBaseLeader __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ILeaders_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILeaders_INTERFACE_DEFINED__ */


#ifndef __IRoughs_INTERFACE_DEFINED__
#define __IRoughs_INTERFACE_DEFINED__

/* interface IRoughs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRoughs,0xACC42B32,0x27F3,0x4f74,0xB4,0xA5,0xC9,0x7D,0x4C,0x7B,0x28,0x9D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("ACC42B32-27F3-4f74-B4A5-C97D4C7B289D")
    IRoughs : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rough( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRough __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRough __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRoughsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRoughs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRoughs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRoughs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRoughs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRoughs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRoughs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRoughs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRoughs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rough )( 
            IRoughs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRough __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRoughs __RPC_FAR * This,
            /* [retval][out] */ IRough __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IRoughsVtbl;

    interface IRoughs
    {
        CONST_VTBL struct IRoughsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRoughs_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRoughs_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRoughs_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRoughs_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRoughs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRoughs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRoughs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRoughs_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRoughs_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRoughs_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRoughs_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRoughs_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRoughs_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRoughs_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRoughs_get_Rough(This,Index,Result)	\
    (This)->lpVtbl -> get_Rough(This,Index,Result)

#define IRoughs_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRoughs_get_Rough_Proxy( 
    IRoughs __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRough __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRoughs_get_Rough_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRoughs_Add_Proxy( 
    IRoughs __RPC_FAR * This,
    /* [retval][out] */ IRough __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IRoughs_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRoughs_INTERFACE_DEFINED__ */


#ifndef __IRough_INTERFACE_DEFINED__
#define __IRough_INTERFACE_DEFINED__

/* interface IRough */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRough,0x0A192AC5,0xD8BC,0x43e9,0x8F,0xC7,0xAC,0xF3,0x25,0x78,0xDD,0xB4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0A192AC5-D8BC-43e9-8FC7-ACF32578DDB4")
    IRough : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *NewObject) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *NewObject) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X0( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X0( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y0( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y0( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfY( 
            /* [in] */ double Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRoughVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRough __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRough __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRough __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRough __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRough __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRough __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRough __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IRough __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IRough __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *NewObject);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IRough __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *NewObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X0 )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X0 )( 
            IRough __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y0 )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y0 )( 
            IRough __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IRough __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IRough __RPC_FAR * This,
            /* [in] */ double Value);
        
        END_INTERFACE
    } IRoughVtbl;

    interface IRough
    {
        CONST_VTBL struct IRoughVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRough_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRough_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRough_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRough_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRough_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRough_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRough_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRough_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRough_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRough_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRough_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRough_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IRough_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IRough_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IRough_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IRough_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IRough_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IRough_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IRough_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IRough_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IRough_get_BaseObject(This,NewObject)	\
    (This)->lpVtbl -> get_BaseObject(This,NewObject)

#define IRough_put_BaseObject(This,NewObject)	\
    (This)->lpVtbl -> put_BaseObject(This,NewObject)

#define IRough_get_X0(This,Result)	\
    (This)->lpVtbl -> get_X0(This,Result)

#define IRough_put_X0(This,Value)	\
    (This)->lpVtbl -> put_X0(This,Value)

#define IRough_get_Y0(This,Result)	\
    (This)->lpVtbl -> get_Y0(This,Result)

#define IRough_put_Y0(This,Value)	\
    (This)->lpVtbl -> put_Y0(This,Value)

#define IRough_get_ShelfX(This,Result)	\
    (This)->lpVtbl -> get_ShelfX(This,Result)

#define IRough_put_ShelfX(This,Value)	\
    (This)->lpVtbl -> put_ShelfX(This,Value)

#define IRough_get_ShelfY(This,Result)	\
    (This)->lpVtbl -> get_ShelfY(This,Result)

#define IRough_put_ShelfY(This,Value)	\
    (This)->lpVtbl -> put_ShelfY(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough_get_BaseObject_Proxy( 
    IRough __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *NewObject);


void __RPC_STUB IRough_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough_put_BaseObject_Proxy( 
    IRough __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *NewObject);


void __RPC_STUB IRough_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough_get_X0_Proxy( 
    IRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IRough_get_X0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough_put_X0_Proxy( 
    IRough __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRough_put_X0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough_get_Y0_Proxy( 
    IRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IRough_get_Y0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough_put_Y0_Proxy( 
    IRough __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRough_put_Y0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough_get_ShelfX_Proxy( 
    IRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IRough_get_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough_put_ShelfX_Proxy( 
    IRough __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRough_put_ShelfX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRough_get_ShelfY_Proxy( 
    IRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IRough_get_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRough_put_ShelfY_Proxy( 
    IRough __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IRough_put_ShelfY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRough_INTERFACE_DEFINED__ */


#ifndef __IMarkLeader_INTERFACE_DEFINED__
#define __IMarkLeader_INTERFACE_DEFINED__

/* interface IMarkLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMarkLeader,0x8A5D2A56,0xECB6,0x4151,0xB1,0xAC,0xF8,0x54,0x8C,0xD6,0x68,0xCF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8A5D2A56-ECB6-4151-B1AC-F8548CD668CF")
    IMarkLeader : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOnBranch( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUnderBranch( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Designation( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMarkLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMarkLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMarkLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMarkLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMarkLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMarkLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMarkLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMarkLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextOnBranch )( 
            IMarkLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnderBranch )( 
            IMarkLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Designation )( 
            IMarkLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IMarkLeaderVtbl;

    interface IMarkLeader
    {
        CONST_VTBL struct IMarkLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMarkLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMarkLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMarkLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMarkLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMarkLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMarkLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMarkLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMarkLeader_get_TextOnBranch(This,PVal)	\
    (This)->lpVtbl -> get_TextOnBranch(This,PVal)

#define IMarkLeader_get_TextUnderBranch(This,PVal)	\
    (This)->lpVtbl -> get_TextUnderBranch(This,PVal)

#define IMarkLeader_get_Designation(This,PVal)	\
    (This)->lpVtbl -> get_Designation(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkLeader_get_TextOnBranch_Proxy( 
    IMarkLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMarkLeader_get_TextOnBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkLeader_get_TextUnderBranch_Proxy( 
    IMarkLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMarkLeader_get_TextUnderBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMarkLeader_get_Designation_Proxy( 
    IMarkLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IMarkLeader_get_Designation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMarkLeader_INTERFACE_DEFINED__ */


#ifndef __IPositionLeader_INTERFACE_DEFINED__
#define __IPositionLeader_INTERFACE_DEFINED__

/* interface IPositionLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPositionLeader,0xA8227628,0x4B9C,0x42c8,0xAE,0x58,0xB3,0x71,0x6A,0x7E,0xC1,0xAF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A8227628-4B9C-42c8-AE58-B3716A7EC1AF")
    IPositionLeader : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfDirection( 
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfDirection( 
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShelfVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShelfVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextDirection( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextDirection( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Form( 
            /* [retval][out] */ /* external definition not present */ ksPositionLederFormEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Form( 
            /* [in] */ /* external definition not present */ ksPositionLederFormEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Positions( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UnderPositionText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Horizontally( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Horizontally( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPositionLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPositionLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPositionLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPositionLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfVisible )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfVisible )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDirection )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextDirection )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Form )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksPositionLederFormEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Form )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksPositionLederFormEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Positions )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UnderPositionText )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Horizontally )( 
            IPositionLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Horizontally )( 
            IPositionLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IPositionLeaderVtbl;

    interface IPositionLeader
    {
        CONST_VTBL struct IPositionLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPositionLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPositionLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPositionLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPositionLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPositionLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPositionLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPositionLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPositionLeader_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define IPositionLeader_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IPositionLeader_get_ShelfVisible(This,Result)	\
    (This)->lpVtbl -> get_ShelfVisible(This,Result)

#define IPositionLeader_put_ShelfVisible(This,Value)	\
    (This)->lpVtbl -> put_ShelfVisible(This,Value)

#define IPositionLeader_get_TextDirection(This,Result)	\
    (This)->lpVtbl -> get_TextDirection(This,Result)

#define IPositionLeader_put_TextDirection(This,Value)	\
    (This)->lpVtbl -> put_TextDirection(This,Value)

#define IPositionLeader_get_Form(This,Result)	\
    (This)->lpVtbl -> get_Form(This,Result)

#define IPositionLeader_put_Form(This,Value)	\
    (This)->lpVtbl -> put_Form(This,Value)

#define IPositionLeader_get_Positions(This,PVal)	\
    (This)->lpVtbl -> get_Positions(This,PVal)

#define IPositionLeader_get_UnderPositionText(This,PVal)	\
    (This)->lpVtbl -> get_UnderPositionText(This,PVal)

#define IPositionLeader_get_Horizontally(This,Result)	\
    (This)->lpVtbl -> get_Horizontally(This,Result)

#define IPositionLeader_put_Horizontally(This,Value)	\
    (This)->lpVtbl -> put_Horizontally(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_ShelfDirection_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);


void __RPC_STUB IPositionLeader_get_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPositionLeader_put_ShelfDirection_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);


void __RPC_STUB IPositionLeader_put_ShelfDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_ShelfVisible_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPositionLeader_get_ShelfVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPositionLeader_put_ShelfVisible_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IPositionLeader_put_ShelfVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_TextDirection_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPositionLeader_get_TextDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPositionLeader_put_TextDirection_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IPositionLeader_put_TextDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_Form_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksPositionLederFormEnum __RPC_FAR *Result);


void __RPC_STUB IPositionLeader_get_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPositionLeader_put_Form_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksPositionLederFormEnum Value);


void __RPC_STUB IPositionLeader_put_Form_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_Positions_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPositionLeader_get_Positions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_UnderPositionText_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IPositionLeader_get_UnderPositionText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPositionLeader_get_Horizontally_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPositionLeader_get_Horizontally_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPositionLeader_put_Horizontally_Proxy( 
    IPositionLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IPositionLeader_put_Horizontally_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPositionLeader_INTERFACE_DEFINED__ */


#ifndef __IChangeLeader_INTERFACE_DEFINED__
#define __IChangeLeader_INTERFACE_DEFINED__

/* interface IChangeLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IChangeLeader,0xCCFBE87D,0x1A3C,0x4c8b,0xAB,0xE3,0x1C,0x23,0x19,0x69,0x43,0x14);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CCFBE87D-1A3C-4c8b-ABE3-1C2319694314")
    IChangeLeader : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignType( 
            /* [retval][out] */ /* external definition not present */ ksChangeLeaderSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignType( 
            /* [in] */ /* external definition not present */ ksChangeLeaderSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignHeight( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignHeight( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeaderLength( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeaderLength( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FullLeaderLength( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FullLeaderLength( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Designation( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IChangeLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IChangeLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IChangeLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IChangeLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignType )( 
            IChangeLeader __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksChangeLeaderSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignType )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksChangeLeaderSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignHeight )( 
            IChangeLeader __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignHeight )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeaderLength )( 
            IChangeLeader __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeaderLength )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FullLeaderLength )( 
            IChangeLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FullLeaderLength )( 
            IChangeLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Designation )( 
            IChangeLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IChangeLeaderVtbl;

    interface IChangeLeader
    {
        CONST_VTBL struct IChangeLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IChangeLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IChangeLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IChangeLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IChangeLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IChangeLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IChangeLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IChangeLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IChangeLeader_get_SignType(This,Result)	\
    (This)->lpVtbl -> get_SignType(This,Result)

#define IChangeLeader_put_SignType(This,Value)	\
    (This)->lpVtbl -> put_SignType(This,Value)

#define IChangeLeader_get_SignHeight(This,Result)	\
    (This)->lpVtbl -> get_SignHeight(This,Result)

#define IChangeLeader_put_SignHeight(This,Value)	\
    (This)->lpVtbl -> put_SignHeight(This,Value)

#define IChangeLeader_get_LeaderLength(This,Result)	\
    (This)->lpVtbl -> get_LeaderLength(This,Result)

#define IChangeLeader_put_LeaderLength(This,Value)	\
    (This)->lpVtbl -> put_LeaderLength(This,Value)

#define IChangeLeader_get_FullLeaderLength(This,Result)	\
    (This)->lpVtbl -> get_FullLeaderLength(This,Result)

#define IChangeLeader_put_FullLeaderLength(This,Value)	\
    (This)->lpVtbl -> put_FullLeaderLength(This,Value)

#define IChangeLeader_get_Designation(This,PVal)	\
    (This)->lpVtbl -> get_Designation(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChangeLeader_get_SignType_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksChangeLeaderSignEnum __RPC_FAR *Result);


void __RPC_STUB IChangeLeader_get_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IChangeLeader_put_SignType_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksChangeLeaderSignEnum Value);


void __RPC_STUB IChangeLeader_put_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChangeLeader_get_SignHeight_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IChangeLeader_get_SignHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IChangeLeader_put_SignHeight_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IChangeLeader_put_SignHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChangeLeader_get_LeaderLength_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IChangeLeader_get_LeaderLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IChangeLeader_put_LeaderLength_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IChangeLeader_put_LeaderLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChangeLeader_get_FullLeaderLength_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IChangeLeader_get_FullLeaderLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IChangeLeader_put_FullLeaderLength_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IChangeLeader_put_FullLeaderLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IChangeLeader_get_Designation_Proxy( 
    IChangeLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IChangeLeader_get_Designation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IChangeLeader_INTERFACE_DEFINED__ */


#ifndef __IBase_INTERFACE_DEFINED__
#define __IBase_INTERFACE_DEFINED__

/* interface IBase */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBase,0x01CDFD67,0x69EA,0x4289,0x8F,0x42,0x5B,0x01,0xBB,0x9B,0xF7,0x0B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("01CDFD67-69EA-4289-8F42-5B01BB9BF70B")
    IBase : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object1) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X0( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X0( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y0( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y0( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DrawType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSorted( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSorted( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBaseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBase __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBase __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBase __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBase __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBase __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBase __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBase __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBase __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBase __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IBase __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object1);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X0 )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X0 )( 
            IBase __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y0 )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y0 )( 
            IBase __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchX )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchX )( 
            IBase __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchY )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchY )( 
            IBase __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawType )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawType )( 
            IBase __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSorted )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSorted )( 
            IBase __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IBase __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IBaseVtbl;

    interface IBase
    {
        CONST_VTBL struct IBaseVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBase_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBase_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBase_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBase_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBase_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBase_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBase_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBase_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBase_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBase_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBase_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBase_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBase_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBase_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBase_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBase_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBase_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBase_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBase_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBase_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBase_get_BaseObject(This,Object1)	\
    (This)->lpVtbl -> get_BaseObject(This,Object1)

#define IBase_put_BaseObject(This,Object1)	\
    (This)->lpVtbl -> put_BaseObject(This,Object1)

#define IBase_get_X0(This,Result)	\
    (This)->lpVtbl -> get_X0(This,Result)

#define IBase_put_X0(This,Value)	\
    (This)->lpVtbl -> put_X0(This,Value)

#define IBase_get_Y0(This,Result)	\
    (This)->lpVtbl -> get_Y0(This,Result)

#define IBase_put_Y0(This,Value)	\
    (This)->lpVtbl -> put_Y0(This,Value)

#define IBase_get_BranchX(This,Result)	\
    (This)->lpVtbl -> get_BranchX(This,Result)

#define IBase_put_BranchX(This,Value)	\
    (This)->lpVtbl -> put_BranchX(This,Value)

#define IBase_get_BranchY(This,Result)	\
    (This)->lpVtbl -> get_BranchY(This,Result)

#define IBase_put_BranchY(This,Value)	\
    (This)->lpVtbl -> put_BranchY(This,Value)

#define IBase_get_DrawType(This,Result)	\
    (This)->lpVtbl -> get_DrawType(This,Result)

#define IBase_put_DrawType(This,Value)	\
    (This)->lpVtbl -> put_DrawType(This,Value)

#define IBase_get_AutoSorted(This,Result)	\
    (This)->lpVtbl -> get_AutoSorted(This,Result)

#define IBase_put_AutoSorted(This,Value)	\
    (This)->lpVtbl -> put_AutoSorted(This,Value)

#define IBase_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_BaseObject_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Object1);


void __RPC_STUB IBase_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_BaseObject_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object1);


void __RPC_STUB IBase_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_X0_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBase_get_X0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_X0_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBase_put_X0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_Y0_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBase_get_Y0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_Y0_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBase_put_Y0_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_BranchX_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBase_get_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_BranchX_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBase_put_BranchX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_BranchY_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IBase_get_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_BranchY_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IBase_put_BranchY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_DrawType_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase_get_DrawType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_DrawType_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBase_put_DrawType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_AutoSorted_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBase_get_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBase_put_AutoSorted_Proxy( 
    IBase __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBase_put_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBase_get_Text_Proxy( 
    IBase __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBase_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBase_INTERFACE_DEFINED__ */


#ifndef __IBases_INTERFACE_DEFINED__
#define __IBases_INTERFACE_DEFINED__

/* interface IBases */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBases,0xC607727C,0x6B0A,0x4fb6,0xAF,0xCA,0xED,0x9D,0x83,0xF5,0xC6,0xB7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C607727C-6B0A-4fb6-AFCA-ED9D83F5C6B7")
    IBases : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Base( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBase __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBase __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBasesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBases __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBases __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBases __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBases __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBases __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBases __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBases __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBases __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Base )( 
            IBases __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBase __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBases __RPC_FAR * This,
            /* [retval][out] */ IBase __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IBasesVtbl;

    interface IBases
    {
        CONST_VTBL struct IBasesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBases_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBases_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBases_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBases_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBases_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBases_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBases_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBases_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBases_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBases_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBases_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBases_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBases_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBases_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBases_get_Base(This,Index,Result)	\
    (This)->lpVtbl -> get_Base(This,Index,Result)

#define IBases_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBases_get_Base_Proxy( 
    IBases __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBase __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBases_get_Base_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBases_Add_Proxy( 
    IBases __RPC_FAR * This,
    /* [retval][out] */ IBase __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IBases_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBases_INTERFACE_DEFINED__ */


#ifndef __IBrandLeader_INTERFACE_DEFINED__
#define __IBrandLeader_INTERFACE_DEFINED__

/* interface IBrandLeader */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBrandLeader,0xEEF8366B,0x7C8D,0x448b,0x99,0x44,0xBE,0x63,0xE8,0x2C,0x15,0x43);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EEF8366B-7C8D-448b-9944-BE63E82C1543")
    IBrandLeader : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextOnBranch( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextUnderBranch( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Designation( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBrandLeaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBrandLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBrandLeader __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBrandLeader __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBrandLeader __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBrandLeader __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBrandLeader __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBrandLeader __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextOnBranch )( 
            IBrandLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUnderBranch )( 
            IBrandLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Designation )( 
            IBrandLeader __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IBrandLeader __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IBrandLeader __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IBrandLeaderVtbl;

    interface IBrandLeader
    {
        CONST_VTBL struct IBrandLeaderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBrandLeader_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBrandLeader_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBrandLeader_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBrandLeader_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBrandLeader_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBrandLeader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBrandLeader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBrandLeader_get_TextOnBranch(This,PVal)	\
    (This)->lpVtbl -> get_TextOnBranch(This,PVal)

#define IBrandLeader_get_TextUnderBranch(This,PVal)	\
    (This)->lpVtbl -> get_TextUnderBranch(This,PVal)

#define IBrandLeader_get_Designation(This,PVal)	\
    (This)->lpVtbl -> get_Designation(This,PVal)

#define IBrandLeader_get_Direction(This,Result)	\
    (This)->lpVtbl -> get_Direction(This,Result)

#define IBrandLeader_put_Direction(This,Value)	\
    (This)->lpVtbl -> put_Direction(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrandLeader_get_TextOnBranch_Proxy( 
    IBrandLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBrandLeader_get_TextOnBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrandLeader_get_TextUnderBranch_Proxy( 
    IBrandLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBrandLeader_get_TextUnderBranch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrandLeader_get_Designation_Proxy( 
    IBrandLeader __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IBrandLeader_get_Designation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrandLeader_get_Direction_Proxy( 
    IBrandLeader __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBrandLeader_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrandLeader_put_Direction_Proxy( 
    IBrandLeader __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IBrandLeader_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBrandLeader_INTERFACE_DEFINED__ */


#ifndef __IDrawingTable_INTERFACE_DEFINED__
#define __IDrawingTable_INTERFACE_DEFINED__

/* interface IDrawingTable */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingTable,0x9B421BDA,0x0444,0x4a68,0xB6,0x9C,0x1C,0x05,0xD0,0x5C,0x9D,0x28);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9B421BDA-0444-4a68-B69C-1C05D05C9D28")
    IDrawingTable : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FixedCellsSize( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FixedCellsSize( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FixedRowCount( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FixedRowCount( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FixedColumnCount( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FixedColumnCount( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Save( 
            BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingTableVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingTable __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingTable __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingTable __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FixedCellsSize )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FixedCellsSize )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FixedRowCount )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FixedRowCount )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FixedColumnCount )( 
            IDrawingTable __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FixedColumnCount )( 
            IDrawingTable __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IDrawingTable __RPC_FAR * This,
            BSTR FileName,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IDrawingTableVtbl;

    interface IDrawingTable
    {
        CONST_VTBL struct IDrawingTableVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingTable_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingTable_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingTable_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingTable_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingTable_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingTable_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingTable_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingTable_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingTable_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingTable_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingTable_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingTable_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IDrawingTable_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IDrawingTable_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IDrawingTable_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IDrawingTable_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IDrawingTable_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IDrawingTable_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IDrawingTable_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IDrawingTable_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IDrawingTable_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IDrawingTable_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IDrawingTable_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IDrawingTable_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IDrawingTable_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IDrawingTable_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IDrawingTable_put_FixedCellsSize(This,NewVal)	\
    (This)->lpVtbl -> put_FixedCellsSize(This,NewVal)

#define IDrawingTable_get_FixedCellsSize(This,PVal)	\
    (This)->lpVtbl -> get_FixedCellsSize(This,PVal)

#define IDrawingTable_put_FixedRowCount(This,NewVal)	\
    (This)->lpVtbl -> put_FixedRowCount(This,NewVal)

#define IDrawingTable_get_FixedRowCount(This,PVal)	\
    (This)->lpVtbl -> get_FixedRowCount(This,PVal)

#define IDrawingTable_put_FixedColumnCount(This,NewVal)	\
    (This)->lpVtbl -> put_FixedColumnCount(This,NewVal)

#define IDrawingTable_get_FixedColumnCount(This,PVal)	\
    (This)->lpVtbl -> get_FixedColumnCount(This,PVal)

#define IDrawingTable_Save(This,FileName,PVal)	\
    (This)->lpVtbl -> Save(This,FileName,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTable_get_X_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDrawingTable_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingTable_put_X_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDrawingTable_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTable_get_Y_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IDrawingTable_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingTable_put_Y_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IDrawingTable_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingTable_put_Angle_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IDrawingTable_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTable_get_Angle_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IDrawingTable_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingTable_put_FixedCellsSize_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IDrawingTable_put_FixedCellsSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTable_get_FixedCellsSize_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDrawingTable_get_FixedCellsSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingTable_put_FixedRowCount_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IDrawingTable_put_FixedRowCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTable_get_FixedRowCount_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDrawingTable_get_FixedRowCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingTable_put_FixedColumnCount_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IDrawingTable_put_FixedColumnCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTable_get_FixedColumnCount_Proxy( 
    IDrawingTable __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDrawingTable_get_FixedColumnCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingTable_Save_Proxy( 
    IDrawingTable __RPC_FAR * This,
    BSTR FileName,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IDrawingTable_Save_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingTable_INTERFACE_DEFINED__ */


#ifndef __IDrawingTables_INTERFACE_DEFINED__
#define __IDrawingTables_INTERFACE_DEFINED__

/* interface IDrawingTables */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingTables,0xDF92DACE,0xBDC6,0x4341,0x86,0xDA,0x3A,0x9C,0x8D,0xCF,0xDE,0xFE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DF92DACE-BDC6-4341-86DA-3A9C8DCFDEFE")
    IDrawingTables : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingTable( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ long RowsCount,
            /* [in] */ long ColumnsCount,
            /* [in] */ double RowHeigh,
            /* [in] */ double ColumnsWidth,
            /* [in] */ /* external definition not present */ ksTableTileLayoutEnum TitlePos,
            /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Load( 
            BSTR FileName,
            /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingTablesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingTables __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingTables __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingTables __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingTables __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingTables __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingTables __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingTables __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDrawingTables __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDrawingTables __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingTable )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDrawingTables __RPC_FAR * This,
            /* [in] */ long RowsCount,
            /* [in] */ long ColumnsCount,
            /* [in] */ double RowHeigh,
            /* [in] */ double ColumnsWidth,
            /* [in] */ /* external definition not present */ ksTableTileLayoutEnum TitlePos,
            /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Load )( 
            IDrawingTables __RPC_FAR * This,
            BSTR FileName,
            /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IDrawingTablesVtbl;

    interface IDrawingTables
    {
        CONST_VTBL struct IDrawingTablesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingTables_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingTables_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingTables_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingTables_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingTables_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingTables_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingTables_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingTables_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingTables_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingTables_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingTables_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingTables_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDrawingTables_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDrawingTables_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IDrawingTables_get_DrawingTable(This,Index,Result)	\
    (This)->lpVtbl -> get_DrawingTable(This,Index,Result)

#define IDrawingTables_Add(This,RowsCount,ColumnsCount,RowHeigh,ColumnsWidth,TitlePos,Value)	\
    (This)->lpVtbl -> Add(This,RowsCount,ColumnsCount,RowHeigh,ColumnsWidth,TitlePos,Value)

#define IDrawingTables_Load(This,FileName,PVal)	\
    (This)->lpVtbl -> Load(This,FileName,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingTables_get_DrawingTable_Proxy( 
    IDrawingTables __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingTables_get_DrawingTable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingTables_Add_Proxy( 
    IDrawingTables __RPC_FAR * This,
    /* [in] */ long RowsCount,
    /* [in] */ long ColumnsCount,
    /* [in] */ double RowHeigh,
    /* [in] */ double ColumnsWidth,
    /* [in] */ /* external definition not present */ ksTableTileLayoutEnum TitlePos,
    /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IDrawingTables_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingTables_Load_Proxy( 
    IDrawingTables __RPC_FAR * This,
    BSTR FileName,
    /* [retval][out] */ IDrawingTable __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IDrawingTables_Load_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingTables_INTERFACE_DEFINED__ */


#ifndef __ITolerances_INTERFACE_DEFINED__
#define __ITolerances_INTERFACE_DEFINED__

/* interface ITolerances */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITolerances,0x97CDD55F,0x3C64,0x469b,0xB2,0x6E,0xA9,0x27,0xD3,0x30,0x0B,0x6C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("97CDD55F-3C64-469b-B26E-A927D3300B6C")
    ITolerances : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Tolerance( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ITolerance __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ITolerance __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITolerancesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITolerances __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITolerances __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITolerances __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITolerances __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITolerances __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITolerances __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITolerances __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ITolerances __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tolerance )( 
            ITolerances __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ITolerance __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ITolerances __RPC_FAR * This,
            /* [retval][out] */ ITolerance __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ITolerancesVtbl;

    interface ITolerances
    {
        CONST_VTBL struct ITolerancesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITolerances_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITolerances_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITolerances_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITolerances_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITolerances_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITolerances_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITolerances_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITolerances_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITolerances_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITolerances_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITolerances_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITolerances_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ITolerances_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ITolerances_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ITolerances_get_Tolerance(This,Index,Result)	\
    (This)->lpVtbl -> get_Tolerance(This,Index,Result)

#define ITolerances_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerances_get_Tolerance_Proxy( 
    ITolerances __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ITolerance __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ITolerances_get_Tolerance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITolerances_Add_Proxy( 
    ITolerances __RPC_FAR * This,
    /* [retval][out] */ ITolerance __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ITolerances_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITolerances_INTERFACE_DEFINED__ */


#ifndef __ITolerance_INTERFACE_DEFINED__
#define __ITolerance_INTERFACE_DEFINED__

/* interface ITolerance */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITolerance,0x42DEF911,0xADB2,0x478c,0x85,0xF1,0xD5,0xFE,0xFA,0x26,0x2E,0xEC);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("42DEF911-ADB2-478c-85F1-D5FEFA262EEC")
    ITolerance : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowType( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowType( 
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BranchPos( 
            /* [in] */ long Index,
            /* [retval][out] */ /* external definition not present */ ksTablePointEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BranchPos( 
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksTablePointEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IToleranceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITolerance __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITolerance __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITolerance __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ITolerance __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowType )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowType )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BranchPos )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ /* external definition not present */ ksTablePointEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BranchPos )( 
            ITolerance __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksTablePointEnum Value);
        
        END_INTERFACE
    } IToleranceVtbl;

    interface ITolerance
    {
        CONST_VTBL struct IToleranceVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITolerance_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITolerance_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITolerance_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITolerance_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITolerance_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITolerance_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITolerance_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITolerance_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITolerance_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITolerance_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITolerance_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITolerance_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ITolerance_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ITolerance_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ITolerance_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ITolerance_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ITolerance_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ITolerance_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ITolerance_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ITolerance_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ITolerance_get_ArrowType(This,Index,Result)	\
    (This)->lpVtbl -> get_ArrowType(This,Index,Result)

#define ITolerance_put_ArrowType(This,Index,Value)	\
    (This)->lpVtbl -> put_ArrowType(This,Index,Value)

#define ITolerance_get_BranchPos(This,Index,Result)	\
    (This)->lpVtbl -> get_BranchPos(This,Index,Result)

#define ITolerance_put_BranchPos(This,Index,Value)	\
    (This)->lpVtbl -> put_BranchPos(This,Index,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerance_get_ArrowType_Proxy( 
    ITolerance __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITolerance_get_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITolerance_put_ArrowType_Proxy( 
    ITolerance __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ITolerance_put_ArrowType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITolerance_get_BranchPos_Proxy( 
    ITolerance __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ /* external definition not present */ ksTablePointEnum __RPC_FAR *Result);


void __RPC_STUB ITolerance_get_BranchPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITolerance_put_BranchPos_Proxy( 
    ITolerance __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ /* external definition not present */ ksTablePointEnum Value);


void __RPC_STUB ITolerance_put_BranchPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITolerance_INTERFACE_DEFINED__ */


#ifndef __IToleranceParam_INTERFACE_DEFINED__
#define __IToleranceParam_INTERFACE_DEFINED__

/* interface IToleranceParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IToleranceParam,0x46E2F216,0x6BCE,0x4863,0x9D,0xDC,0xCC,0x08,0xDC,0x00,0x16,0xF7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("46E2F216-6BCE-4863-9DDC-CC08DC0016F7")
    IToleranceParam : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BasePointPos( 
            /* [retval][out] */ /* external definition not present */ ksTablePointEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BasePointPos( 
            /* [in] */ /* external definition not present */ ksTablePointEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Vertical( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Vertical( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Table( 
            /* [retval][out] */ ITable __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sign( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sign( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PrefixSign( 
            /* [retval][out] */ /* external definition not present */ ksTolerancePrefixSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PrefixSign( 
            /* [in] */ /* external definition not present */ ksTolerancePrefixSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ BSTR Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SuffixSign( 
            /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SuffixSign( 
            /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseValue1( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseSign1( 
            /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseSign1( 
            /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseValue2( 
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseSign2( 
            /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseSign2( 
            /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IToleranceParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IToleranceParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IToleranceParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IToleranceParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BasePointPos )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTablePointEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BasePointPos )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTablePointEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Vertical )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Vertical )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Table )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ ITable __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sign )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sign )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PrefixSign )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksTolerancePrefixSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PrefixSign )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksTolerancePrefixSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ BSTR Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SuffixSign )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SuffixSign )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseValue1 )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseSign1 )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseSign1 )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseValue2 )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseSign2 )( 
            IToleranceParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseSign2 )( 
            IToleranceParam __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value);
        
        END_INTERFACE
    } IToleranceParamVtbl;

    interface IToleranceParam
    {
        CONST_VTBL struct IToleranceParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IToleranceParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IToleranceParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IToleranceParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IToleranceParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IToleranceParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IToleranceParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IToleranceParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IToleranceParam_get_BasePointPos(This,Result)	\
    (This)->lpVtbl -> get_BasePointPos(This,Result)

#define IToleranceParam_put_BasePointPos(This,Value)	\
    (This)->lpVtbl -> put_BasePointPos(This,Value)

#define IToleranceParam_get_Vertical(This,Result)	\
    (This)->lpVtbl -> get_Vertical(This,Result)

#define IToleranceParam_put_Vertical(This,Value)	\
    (This)->lpVtbl -> put_Vertical(This,Value)

#define IToleranceParam_get_Table(This,PVal)	\
    (This)->lpVtbl -> get_Table(This,PVal)

#define IToleranceParam_get_Sign(This,Result)	\
    (This)->lpVtbl -> get_Sign(This,Result)

#define IToleranceParam_put_Sign(This,Value)	\
    (This)->lpVtbl -> put_Sign(This,Value)

#define IToleranceParam_get_PrefixSign(This,Result)	\
    (This)->lpVtbl -> get_PrefixSign(This,Result)

#define IToleranceParam_put_PrefixSign(This,Value)	\
    (This)->lpVtbl -> put_PrefixSign(This,Value)

#define IToleranceParam_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IToleranceParam_put_Value(This,Value)	\
    (This)->lpVtbl -> put_Value(This,Value)

#define IToleranceParam_get_SuffixSign(This,Result)	\
    (This)->lpVtbl -> get_SuffixSign(This,Result)

#define IToleranceParam_put_SuffixSign(This,Value)	\
    (This)->lpVtbl -> put_SuffixSign(This,Value)

#define IToleranceParam_get_BaseValue1(This,PVal)	\
    (This)->lpVtbl -> get_BaseValue1(This,PVal)

#define IToleranceParam_get_BaseSign1(This,Result)	\
    (This)->lpVtbl -> get_BaseSign1(This,Result)

#define IToleranceParam_put_BaseSign1(This,Value)	\
    (This)->lpVtbl -> put_BaseSign1(This,Value)

#define IToleranceParam_get_BaseValue2(This,PVal)	\
    (This)->lpVtbl -> get_BaseValue2(This,PVal)

#define IToleranceParam_get_BaseSign2(This,Result)	\
    (This)->lpVtbl -> get_BaseSign2(This,Result)

#define IToleranceParam_put_BaseSign2(This,Value)	\
    (This)->lpVtbl -> put_BaseSign2(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_BasePointPos_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTablePointEnum __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_BasePointPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_BasePointPos_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTablePointEnum Value);


void __RPC_STUB IToleranceParam_put_BasePointPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_Vertical_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_Vertical_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_Vertical_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IToleranceParam_put_Vertical_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_Table_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ ITable __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IToleranceParam_get_Table_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_Sign_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_Sign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_Sign_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IToleranceParam_put_Sign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_PrefixSign_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksTolerancePrefixSignEnum __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_PrefixSign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_PrefixSign_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksTolerancePrefixSignEnum Value);


void __RPC_STUB IToleranceParam_put_PrefixSign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_Value_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IToleranceParam_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_Value_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ BSTR Value);


void __RPC_STUB IToleranceParam_put_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_SuffixSign_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_SuffixSign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_SuffixSign_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value);


void __RPC_STUB IToleranceParam_put_SuffixSign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_BaseValue1_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IToleranceParam_get_BaseValue1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_BaseSign1_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_BaseSign1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_BaseSign1_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value);


void __RPC_STUB IToleranceParam_put_BaseSign1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_BaseValue2_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ ITextLine __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IToleranceParam_get_BaseValue2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IToleranceParam_get_BaseSign2_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksToleranceSuffixSignEnum __RPC_FAR *Result);


void __RPC_STUB IToleranceParam_get_BaseSign2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IToleranceParam_put_BaseSign2_Proxy( 
    IToleranceParam __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksToleranceSuffixSignEnum Value);


void __RPC_STUB IToleranceParam_put_BaseSign2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IToleranceParam_INTERFACE_DEFINED__ */


#ifndef __ICutLine_INTERFACE_DEFINED__
#define __ICutLine_INTERFACE_DEFINED__

/* interface ICutLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICutLine,0x26E86124,0xDC1C,0x41a2,0x80,0x75,0xE7,0x3F,0x3E,0xAD,0x84,0x74);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("26E86124-DC1C-41a2-8075-E73F3EAD8474")
    ICutLine : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ArrowPos( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ArrowPos( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Points( 
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Points( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSorted( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSorted( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSheet( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoZone( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoZone( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalTextPos( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AdditionalTextPos( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICutLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICutLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICutLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICutLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ArrowPos )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ArrowPos )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Points )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Points )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSorted )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSorted )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalText )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSheet )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSheet )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoZone )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoZone )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalTextPos )( 
            ICutLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AdditionalTextPos )( 
            ICutLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } ICutLineVtbl;

    interface ICutLine
    {
        CONST_VTBL struct ICutLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICutLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICutLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICutLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICutLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICutLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICutLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICutLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICutLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICutLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICutLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICutLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICutLine_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ICutLine_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ICutLine_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ICutLine_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ICutLine_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ICutLine_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ICutLine_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ICutLine_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ICutLine_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ICutLine_get_ArrowPos(This,Result)	\
    (This)->lpVtbl -> get_ArrowPos(This,Result)

#define ICutLine_put_ArrowPos(This,Value)	\
    (This)->lpVtbl -> put_ArrowPos(This,Value)

#define ICutLine_get_X1(This,Result)	\
    (This)->lpVtbl -> get_X1(This,Result)

#define ICutLine_put_X1(This,Value)	\
    (This)->lpVtbl -> put_X1(This,Value)

#define ICutLine_get_Y1(This,Result)	\
    (This)->lpVtbl -> get_Y1(This,Result)

#define ICutLine_put_Y1(This,Value)	\
    (This)->lpVtbl -> put_Y1(This,Value)

#define ICutLine_get_X2(This,Result)	\
    (This)->lpVtbl -> get_X2(This,Result)

#define ICutLine_put_X2(This,Value)	\
    (This)->lpVtbl -> put_X2(This,Value)

#define ICutLine_get_Y2(This,Result)	\
    (This)->lpVtbl -> get_Y2(This,Result)

#define ICutLine_put_Y2(This,Value)	\
    (This)->lpVtbl -> put_Y2(This,Value)

#define ICutLine_put_Points(This,Points)	\
    (This)->lpVtbl -> put_Points(This,Points)

#define ICutLine_get_Points(This,PVal)	\
    (This)->lpVtbl -> get_Points(This,PVal)

#define ICutLine_get_AutoSorted(This,Result)	\
    (This)->lpVtbl -> get_AutoSorted(This,Result)

#define ICutLine_put_AutoSorted(This,Value)	\
    (This)->lpVtbl -> put_AutoSorted(This,Value)

#define ICutLine_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define ICutLine_get_AdditionalText(This,PVal)	\
    (This)->lpVtbl -> get_AdditionalText(This,PVal)

#define ICutLine_get_AutoSheet(This,Result)	\
    (This)->lpVtbl -> get_AutoSheet(This,Result)

#define ICutLine_put_AutoSheet(This,Value)	\
    (This)->lpVtbl -> put_AutoSheet(This,Value)

#define ICutLine_get_AutoZone(This,Result)	\
    (This)->lpVtbl -> get_AutoZone(This,Result)

#define ICutLine_put_AutoZone(This,Value)	\
    (This)->lpVtbl -> put_AutoZone(This,Value)

#define ICutLine_get_AdditionalTextPos(This,Result)	\
    (This)->lpVtbl -> get_AdditionalTextPos(This,Result)

#define ICutLine_put_AdditionalTextPos(This,Value)	\
    (This)->lpVtbl -> put_AdditionalTextPos(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_ArrowPos_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_ArrowPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_ArrowPos_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICutLine_put_ArrowPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_X1_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_X1_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ICutLine_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_Y1_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_Y1_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ICutLine_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_X2_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_X2_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ICutLine_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_Y2_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_Y2_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ICutLine_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_Points_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB ICutLine_put_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_Points_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ICutLine_get_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_AutoSorted_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_AutoSorted_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICutLine_put_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_Text_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ICutLine_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_AdditionalText_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ICutLine_get_AdditionalText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_AutoSheet_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_AutoSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_AutoSheet_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICutLine_put_AutoSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_AutoZone_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_AutoZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_AutoZone_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICutLine_put_AutoZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLine_get_AdditionalTextPos_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICutLine_get_AdditionalTextPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICutLine_put_AdditionalTextPos_Proxy( 
    ICutLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB ICutLine_put_AdditionalTextPos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICutLine_INTERFACE_DEFINED__ */


#ifndef __ICutLines_INTERFACE_DEFINED__
#define __ICutLines_INTERFACE_DEFINED__

/* interface ICutLines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICutLines,0x666DA5B4,0x324C,0x493c,0x9A,0x91,0x37,0xD9,0xE0,0x78,0xEB,0x4E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("666DA5B4-324C-493c-9A91-37D9E078EB4E")
    ICutLines : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutLine( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICutLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ICutLine __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICutLinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICutLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICutLines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICutLines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICutLines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICutLines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICutLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICutLines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ICutLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutLine )( 
            ICutLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICutLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ICutLines __RPC_FAR * This,
            /* [retval][out] */ ICutLine __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } ICutLinesVtbl;

    interface ICutLines
    {
        CONST_VTBL struct ICutLinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICutLines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICutLines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICutLines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICutLines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICutLines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICutLines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICutLines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICutLines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICutLines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICutLines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICutLines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICutLines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ICutLines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ICutLines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ICutLines_get_CutLine(This,Index,Result)	\
    (This)->lpVtbl -> get_CutLine(This,Index,Result)

#define ICutLines_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICutLines_get_CutLine_Proxy( 
    ICutLines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ICutLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICutLines_get_CutLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICutLines_Add_Proxy( 
    ICutLines __RPC_FAR * This,
    /* [retval][out] */ ICutLine __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB ICutLines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICutLines_INTERFACE_DEFINED__ */


#ifndef __IViewPointer_INTERFACE_DEFINED__
#define __IViewPointer_INTERFACE_DEFINED__

/* interface IViewPointer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IViewPointer,0x3EE98177,0x63E8,0x4c48,0x89,0xAD,0x3D,0x5C,0xCC,0xF8,0x4D,0x72);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3EE98177-63E8-4c48-89AD-3D5CCCF84D72")
    IViewPointer : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextX( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextX( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TextY( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TextY( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSorted( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSorted( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSheet( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoZone( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoZone( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IViewPointerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IViewPointer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IViewPointer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IViewPointer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextX )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextX )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextY )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TextY )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSorted )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSorted )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSheet )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSheet )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoZone )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoZone )( 
            IViewPointer __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalText )( 
            IViewPointer __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IViewPointerVtbl;

    interface IViewPointer
    {
        CONST_VTBL struct IViewPointerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IViewPointer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IViewPointer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IViewPointer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IViewPointer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IViewPointer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IViewPointer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IViewPointer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IViewPointer_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IViewPointer_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IViewPointer_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IViewPointer_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IViewPointer_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IViewPointer_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IViewPointer_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IViewPointer_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IViewPointer_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IViewPointer_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IViewPointer_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IViewPointer_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IViewPointer_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IViewPointer_get_X1(This,Result)	\
    (This)->lpVtbl -> get_X1(This,Result)

#define IViewPointer_put_X1(This,Value)	\
    (This)->lpVtbl -> put_X1(This,Value)

#define IViewPointer_get_Y1(This,Result)	\
    (This)->lpVtbl -> get_Y1(This,Result)

#define IViewPointer_put_Y1(This,Value)	\
    (This)->lpVtbl -> put_Y1(This,Value)

#define IViewPointer_get_X2(This,Result)	\
    (This)->lpVtbl -> get_X2(This,Result)

#define IViewPointer_put_X2(This,Value)	\
    (This)->lpVtbl -> put_X2(This,Value)

#define IViewPointer_get_Y2(This,Result)	\
    (This)->lpVtbl -> get_Y2(This,Result)

#define IViewPointer_put_Y2(This,Value)	\
    (This)->lpVtbl -> put_Y2(This,Value)

#define IViewPointer_get_TextX(This,Result)	\
    (This)->lpVtbl -> get_TextX(This,Result)

#define IViewPointer_put_TextX(This,Value)	\
    (This)->lpVtbl -> put_TextX(This,Value)

#define IViewPointer_get_TextY(This,Result)	\
    (This)->lpVtbl -> get_TextY(This,Result)

#define IViewPointer_put_TextY(This,Value)	\
    (This)->lpVtbl -> put_TextY(This,Value)

#define IViewPointer_get_AutoSorted(This,Result)	\
    (This)->lpVtbl -> get_AutoSorted(This,Result)

#define IViewPointer_put_AutoSorted(This,Value)	\
    (This)->lpVtbl -> put_AutoSorted(This,Value)

#define IViewPointer_get_AutoSheet(This,Result)	\
    (This)->lpVtbl -> get_AutoSheet(This,Result)

#define IViewPointer_put_AutoSheet(This,Value)	\
    (This)->lpVtbl -> put_AutoSheet(This,Value)

#define IViewPointer_get_AutoZone(This,Result)	\
    (This)->lpVtbl -> get_AutoZone(This,Result)

#define IViewPointer_put_AutoZone(This,Value)	\
    (This)->lpVtbl -> put_AutoZone(This,Value)

#define IViewPointer_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define IViewPointer_get_AdditionalText(This,PVal)	\
    (This)->lpVtbl -> get_AdditionalText(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_X1_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_X1_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IViewPointer_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_Y1_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_Y1_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IViewPointer_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_X2_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_X2_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IViewPointer_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_Y2_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_Y2_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IViewPointer_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_TextX_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_TextX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_TextX_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IViewPointer_put_TextX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_TextY_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_TextY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_TextY_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IViewPointer_put_TextY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_AutoSorted_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_AutoSorted_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IViewPointer_put_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_AutoSheet_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_AutoSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_AutoSheet_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IViewPointer_put_AutoSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_AutoZone_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IViewPointer_get_AutoZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IViewPointer_put_AutoZone_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IViewPointer_put_AutoZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_Text_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IViewPointer_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointer_get_AdditionalText_Proxy( 
    IViewPointer __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IViewPointer_get_AdditionalText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IViewPointer_INTERFACE_DEFINED__ */


#ifndef __IViewPointers_INTERFACE_DEFINED__
#define __IViewPointers_INTERFACE_DEFINED__

/* interface IViewPointers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IViewPointers,0x08B45C97,0x6F86,0x4809,0xBB,0xC3,0x78,0xF2,0x16,0xBD,0x04,0x30);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("08B45C97-6F86-4809-BBC3-78F216BD0430")
    IViewPointers : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewPointer( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IViewPointer __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IViewPointer __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IViewPointersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IViewPointers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IViewPointers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IViewPointers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IViewPointers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IViewPointers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IViewPointers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IViewPointers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IViewPointers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewPointer )( 
            IViewPointers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IViewPointer __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IViewPointers __RPC_FAR * This,
            /* [retval][out] */ IViewPointer __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IViewPointersVtbl;

    interface IViewPointers
    {
        CONST_VTBL struct IViewPointersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IViewPointers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IViewPointers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IViewPointers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IViewPointers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IViewPointers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IViewPointers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IViewPointers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IViewPointers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IViewPointers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IViewPointers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IViewPointers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IViewPointers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IViewPointers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IViewPointers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IViewPointers_get_ViewPointer(This,Index,Result)	\
    (This)->lpVtbl -> get_ViewPointer(This,Index,Result)

#define IViewPointers_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IViewPointers_get_ViewPointer_Proxy( 
    IViewPointers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IViewPointer __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IViewPointers_get_ViewPointer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IViewPointers_Add_Proxy( 
    IViewPointers __RPC_FAR * This,
    /* [retval][out] */ IViewPointer __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IViewPointers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IViewPointers_INTERFACE_DEFINED__ */


#ifndef __IMultiline_INTERFACE_DEFINED__
#define __IMultiline_INTERFACE_DEFINED__

/* interface IMultiline */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMultiline,0xF6CCB098,0x5710,0x44e3,0x81,0x98,0x8F,0xAF,0xD5,0x6C,0x7A,0x6F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F6CCB098-5710-44e3-8198-8FAFD56C7A6F")
    IMultiline : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseContour( 
            /* [retval][out] */ IContour __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TrackingType( 
            /* [in] */ long VertexIndex,
            /* [retval][out] */ /* external definition not present */ ksMlVertexTrackingEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TrackingType( 
            /* [in] */ long VertexIndex,
            /* [in] */ /* external definition not present */ ksMlVertexTrackingEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexLimiter( 
            /* [in] */ long VertexIndex,
            /* [retval][out] */ /* external definition not present */ ksMlVertexLimiterEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexLimiter( 
            /* [in] */ long VertexIndex,
            /* [in] */ /* external definition not present */ ksMlVertexLimiterEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexDirection( 
            /* [in] */ long VertexIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexDirection( 
            /* [in] */ long VertexIndex,
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexRadius( 
            /* [in] */ long VertexIndex,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexRadius( 
            /* [in] */ long VertexIndex,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexStyle( 
            /* [in] */ long VertexIndex,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexStyle( 
            /* [in] */ long VertexIndex,
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndLimiter( 
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ /* external definition not present */ ksMlEndLimiterEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndLimiter( 
            /* [in] */ VARIANT_BOOL First,
            /* [in] */ /* external definition not present */ ksMlEndLimiterEnum Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndParameter( 
            /* [in] */ VARIANT_BOOL First,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndParameter( 
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EndStyle( 
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EndStyle( 
            /* [in] */ VARIANT_BOOL First,
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddLine( 
            /* [in] */ double Offset,
            /* [in] */ long Style,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteLine( 
            /* [in] */ long LineIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineOffset( 
            /* [in] */ long LineIndex,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineOffset( 
            /* [in] */ long LineIndex,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineStyle( 
            /* [in] */ long LineIndex,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LineStyle( 
            /* [in] */ long LineIndex,
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE FindLine( 
            /* [in] */ double Offset,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LineOffsets( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMultilineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMultiline __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMultiline __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMultiline __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseContour )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ IContour __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TrackingType )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [retval][out] */ /* external definition not present */ ksMlVertexTrackingEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TrackingType )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [in] */ /* external definition not present */ ksMlVertexTrackingEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexLimiter )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [retval][out] */ /* external definition not present */ ksMlVertexLimiterEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexLimiter )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [in] */ /* external definition not present */ ksMlVertexLimiterEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexDirection )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexDirection )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexRadius )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexRadius )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexStyle )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexStyle )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long VertexIndex,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexCount )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EndLimiter )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ /* external definition not present */ ksMlEndLimiterEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EndLimiter )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [in] */ /* external definition not present */ ksMlEndLimiterEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EndParameter )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EndParameter )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EndStyle )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EndStyle )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL First,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddLine )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ double Offset,
            /* [in] */ long Style,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteLine )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long LineIndex,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineCount )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LineOffset )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long LineIndex,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineOffset )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long LineIndex,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineStyle )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long LineIndex,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LineStyle )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ long LineIndex,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindLine )( 
            IMultiline __RPC_FAR * This,
            /* [in] */ double Offset,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LineOffsets )( 
            IMultiline __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } IMultilineVtbl;

    interface IMultiline
    {
        CONST_VTBL struct IMultilineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMultiline_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMultiline_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMultiline_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMultiline_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMultiline_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMultiline_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMultiline_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMultiline_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMultiline_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMultiline_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMultiline_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMultiline_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMultiline_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMultiline_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMultiline_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMultiline_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMultiline_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMultiline_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMultiline_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMultiline_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMultiline_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define IMultiline_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define IMultiline_get_BaseContour(This,Result)	\
    (This)->lpVtbl -> get_BaseContour(This,Result)

#define IMultiline_get_TrackingType(This,VertexIndex,Val)	\
    (This)->lpVtbl -> get_TrackingType(This,VertexIndex,Val)

#define IMultiline_put_TrackingType(This,VertexIndex,Val)	\
    (This)->lpVtbl -> put_TrackingType(This,VertexIndex,Val)

#define IMultiline_get_VertexLimiter(This,VertexIndex,PVal)	\
    (This)->lpVtbl -> get_VertexLimiter(This,VertexIndex,PVal)

#define IMultiline_put_VertexLimiter(This,VertexIndex,Val)	\
    (This)->lpVtbl -> put_VertexLimiter(This,VertexIndex,Val)

#define IMultiline_get_VertexDirection(This,VertexIndex,PVal)	\
    (This)->lpVtbl -> get_VertexDirection(This,VertexIndex,PVal)

#define IMultiline_put_VertexDirection(This,VertexIndex,Val)	\
    (This)->lpVtbl -> put_VertexDirection(This,VertexIndex,Val)

#define IMultiline_put_VertexRadius(This,VertexIndex,NewVal)	\
    (This)->lpVtbl -> put_VertexRadius(This,VertexIndex,NewVal)

#define IMultiline_get_VertexRadius(This,VertexIndex,PVal)	\
    (This)->lpVtbl -> get_VertexRadius(This,VertexIndex,PVal)

#define IMultiline_get_VertexStyle(This,VertexIndex,Result)	\
    (This)->lpVtbl -> get_VertexStyle(This,VertexIndex,Result)

#define IMultiline_put_VertexStyle(This,VertexIndex,Value)	\
    (This)->lpVtbl -> put_VertexStyle(This,VertexIndex,Value)

#define IMultiline_get_VertexCount(This,PVal)	\
    (This)->lpVtbl -> get_VertexCount(This,PVal)

#define IMultiline_get_EndLimiter(This,First,PVal)	\
    (This)->lpVtbl -> get_EndLimiter(This,First,PVal)

#define IMultiline_put_EndLimiter(This,First,Val)	\
    (This)->lpVtbl -> put_EndLimiter(This,First,Val)

#define IMultiline_put_EndParameter(This,First,NewVal)	\
    (This)->lpVtbl -> put_EndParameter(This,First,NewVal)

#define IMultiline_get_EndParameter(This,First,PVal)	\
    (This)->lpVtbl -> get_EndParameter(This,First,PVal)

#define IMultiline_get_EndStyle(This,First,Result)	\
    (This)->lpVtbl -> get_EndStyle(This,First,Result)

#define IMultiline_put_EndStyle(This,First,Value)	\
    (This)->lpVtbl -> put_EndStyle(This,First,Value)

#define IMultiline_AddLine(This,Offset,Style,Result)	\
    (This)->lpVtbl -> AddLine(This,Offset,Style,Result)

#define IMultiline_DeleteLine(This,LineIndex,Result)	\
    (This)->lpVtbl -> DeleteLine(This,LineIndex,Result)

#define IMultiline_get_LineCount(This,PVal)	\
    (This)->lpVtbl -> get_LineCount(This,PVal)

#define IMultiline_put_LineOffset(This,LineIndex,NewVal)	\
    (This)->lpVtbl -> put_LineOffset(This,LineIndex,NewVal)

#define IMultiline_get_LineOffset(This,LineIndex,PVal)	\
    (This)->lpVtbl -> get_LineOffset(This,LineIndex,PVal)

#define IMultiline_get_LineStyle(This,LineIndex,Result)	\
    (This)->lpVtbl -> get_LineStyle(This,LineIndex,Result)

#define IMultiline_put_LineStyle(This,LineIndex,Value)	\
    (This)->lpVtbl -> put_LineStyle(This,LineIndex,Value)

#define IMultiline_FindLine(This,Offset,Result)	\
    (This)->lpVtbl -> FindLine(This,Offset,Result)

#define IMultiline_get_LineOffsets(This,Result)	\
    (This)->lpVtbl -> get_LineOffsets(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_Closed_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IMultiline_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_Closed_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiline_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_BaseContour_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [retval][out] */ IContour __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMultiline_get_BaseContour_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_TrackingType_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [retval][out] */ /* external definition not present */ ksMlVertexTrackingEnum __RPC_FAR *Val);


void __RPC_STUB IMultiline_get_TrackingType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_TrackingType_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [in] */ /* external definition not present */ ksMlVertexTrackingEnum Val);


void __RPC_STUB IMultiline_put_TrackingType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_VertexLimiter_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [retval][out] */ /* external definition not present */ ksMlVertexLimiterEnum __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_VertexLimiter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_VertexLimiter_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [in] */ /* external definition not present */ ksMlVertexLimiterEnum Val);


void __RPC_STUB IMultiline_put_VertexLimiter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_VertexDirection_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_VertexDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_VertexDirection_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IMultiline_put_VertexDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_VertexRadius_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [in] */ double NewVal);


void __RPC_STUB IMultiline_put_VertexRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_VertexRadius_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_VertexRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_VertexStyle_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMultiline_get_VertexStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_VertexStyle_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long VertexIndex,
    /* [in] */ long Value);


void __RPC_STUB IMultiline_put_VertexStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_VertexCount_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_VertexCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_EndLimiter_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [retval][out] */ /* external definition not present */ ksMlEndLimiterEnum __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_EndLimiter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_EndLimiter_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [in] */ /* external definition not present */ ksMlEndLimiterEnum Val);


void __RPC_STUB IMultiline_put_EndLimiter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_EndParameter_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [in] */ double NewVal);


void __RPC_STUB IMultiline_put_EndParameter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_EndParameter_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_EndParameter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_EndStyle_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMultiline_get_EndStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_EndStyle_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL First,
    /* [in] */ long Value);


void __RPC_STUB IMultiline_put_EndStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiline_AddLine_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ double Offset,
    /* [in] */ long Style,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiline_AddLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiline_DeleteLine_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long LineIndex,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMultiline_DeleteLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_LineCount_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_LineCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_LineOffset_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long LineIndex,
    /* [in] */ double NewVal);


void __RPC_STUB IMultiline_put_LineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_LineOffset_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long LineIndex,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMultiline_get_LineOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_LineStyle_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long LineIndex,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMultiline_get_LineStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMultiline_put_LineStyle_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ long LineIndex,
    /* [in] */ long Value);


void __RPC_STUB IMultiline_put_LineStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultiline_FindLine_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [in] */ double Offset,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IMultiline_FindLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultiline_get_LineOffsets_Proxy( 
    IMultiline __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IMultiline_get_LineOffsets_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMultiline_INTERFACE_DEFINED__ */


#ifndef __IMultilines_INTERFACE_DEFINED__
#define __IMultilines_INTERFACE_DEFINED__

/* interface IMultilines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMultilines,0x968D7B84,0x2BC1,0x4354,0xAA,0xFE,0x73,0x19,0x2E,0x40,0x55,0x46);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("968D7B84-2BC1-4354-AAFE-73192E405546")
    IMultilines : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Multiline( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMultiline __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IMultiline __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMultilinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMultilines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMultilines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMultilines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMultilines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMultilines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMultilines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMultilines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IMultilines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Multiline )( 
            IMultilines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMultiline __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IMultilines __RPC_FAR * This,
            /* [retval][out] */ IMultiline __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IMultilinesVtbl;

    interface IMultilines
    {
        CONST_VTBL struct IMultilinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMultilines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMultilines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMultilines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMultilines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMultilines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMultilines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMultilines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMultilines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMultilines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMultilines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMultilines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMultilines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IMultilines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IMultilines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IMultilines_get_Multiline(This,Index,Result)	\
    (This)->lpVtbl -> get_Multiline(This,Index,Result)

#define IMultilines_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMultilines_get_Multiline_Proxy( 
    IMultilines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IMultiline __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMultilines_get_Multiline_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMultilines_Add_Proxy( 
    IMultilines __RPC_FAR * This,
    /* [retval][out] */ IMultiline __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IMultilines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMultilines_INTERFACE_DEFINED__ */


#ifndef __IContourSegment_INTERFACE_DEFINED__
#define __IContourSegment_INTERFACE_DEFINED__

/* interface IContourSegment */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IContourSegment,0xAA485B32,0xFF45,0x4035,0xBF,0xC4,0xAE,0xE5,0x4E,0x63,0x83,0x44);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AA485B32-FF45-4035-BFC4-AEE54E638344")
    IContourSegment : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SegmentType( 
            /* [retval][out] */ /* external definition not present */ ksContourSegmentEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Curve2D( 
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IContourSegmentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IContourSegment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IContourSegment __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IContourSegment __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IContourSegment __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IContourSegment __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IContourSegment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IContourSegment __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IContourSegment __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IContourSegment __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IContourSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IContourSegment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SegmentType )( 
            IContourSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksContourSegmentEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Curve2D )( 
            IContourSegment __RPC_FAR * This,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IContourSegmentVtbl;

    interface IContourSegment
    {
        CONST_VTBL struct IContourSegmentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IContourSegment_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IContourSegment_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IContourSegment_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IContourSegment_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IContourSegment_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IContourSegment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IContourSegment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IContourSegment_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IContourSegment_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IContourSegment_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IContourSegment_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IContourSegment_get_SegmentType(This,Result)	\
    (This)->lpVtbl -> get_SegmentType(This,Result)

#define IContourSegment_get_Curve2D(This,Result)	\
    (This)->lpVtbl -> get_Curve2D(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourSegment_get_SegmentType_Proxy( 
    IContourSegment __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksContourSegmentEnum __RPC_FAR *Result);


void __RPC_STUB IContourSegment_get_SegmentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourSegment_get_Curve2D_Proxy( 
    IContourSegment __RPC_FAR * This,
    /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IContourSegment_get_Curve2D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IContourSegment_INTERFACE_DEFINED__ */


#ifndef __IContour_INTERFACE_DEFINED__
#define __IContour_INTERFACE_DEFINED__

/* interface IContour */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IContour,0xE79F5A53,0xF456,0x4996,0xB6,0x20,0x16,0xB7,0x25,0xF1,0x34,0xFB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E79F5A53-F456-4996-B620-16B725F134FB")
    IContour : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddSegment( 
            /* [in] */ /* external definition not present */ ksContourSegmentEnum Type,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Segment( 
            /* [in] */ long Index,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CopyCurve( 
            /* [in] */ IDrawingObject __RPC_FAR *Curve,
            /* [in] */ VARIANT_BOOL DeleteSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TmpObjects( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CopySegments( 
            /* [in] */ VARIANT Val,
            /* [in] */ VARIANT_BOOL DeleteSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IContourVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IContour __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IContour __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IContour __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IContour __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IContour __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IContour __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IContour __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            IContour __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddSegment )( 
            IContour __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksContourSegmentEnum Type,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Segment )( 
            IContour __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopyCurve )( 
            IContour __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Curve,
            /* [in] */ VARIANT_BOOL DeleteSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TmpObjects )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopySegments )( 
            IContour __RPC_FAR * This,
            /* [in] */ VARIANT Val,
            /* [in] */ VARIANT_BOOL DeleteSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IContourVtbl;

    interface IContour
    {
        CONST_VTBL struct IContourVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IContour_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IContour_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IContour_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IContour_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IContour_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IContour_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IContour_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IContour_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IContour_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IContour_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IContour_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IContour_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define IContour_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define IContour_AddSegment(This,Type,Result)	\
    (This)->lpVtbl -> AddSegment(This,Type,Result)

#define IContour_get_Segment(This,Index,Result)	\
    (This)->lpVtbl -> get_Segment(This,Index,Result)

#define IContour_CopyCurve(This,Curve,DeleteSource,Result)	\
    (This)->lpVtbl -> CopyCurve(This,Curve,DeleteSource,Result)

#define IContour_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)

#define IContour_get_TmpObjects(This,Result)	\
    (This)->lpVtbl -> get_TmpObjects(This,Result)

#define IContour_CopySegments(This,Val,DeleteSource,Result)	\
    (This)->lpVtbl -> CopySegments(This,Val,DeleteSource,Result)

#define IContour_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContour_put_Closed_Proxy( 
    IContour __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IContour_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContour_get_Closed_Proxy( 
    IContour __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IContour_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IContour_AddSegment_Proxy( 
    IContour __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksContourSegmentEnum Type,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IContour_AddSegment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContour_get_Segment_Proxy( 
    IContour __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IContour_get_Segment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IContour_CopyCurve_Proxy( 
    IContour __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Curve,
    /* [in] */ VARIANT_BOOL DeleteSource,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IContour_CopyCurve_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContour_get_Count_Proxy( 
    IContour __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IContour_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContour_get_TmpObjects_Proxy( 
    IContour __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IContour_get_TmpObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IContour_CopySegments_Proxy( 
    IContour __RPC_FAR * This,
    /* [in] */ VARIANT Val,
    /* [in] */ VARIANT_BOOL DeleteSource,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IContour_CopySegments_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IContour_Clear_Proxy( 
    IContour __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IContour_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IContour_INTERFACE_DEFINED__ */


#ifndef __IContourLineSegment_INTERFACE_DEFINED__
#define __IContourLineSegment_INTERFACE_DEFINED__

/* interface IContourLineSegment */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IContourLineSegment,0xFB2432F1,0x8AE7,0x4d43,0xAF,0xF2,0xA3,0xA3,0xBE,0x22,0x6C,0xFA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FB2432F1-8AE7-4d43-AFF2-A3A3BE226CFA")
    IContourLineSegment : public IContourSegment
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IContourLineSegmentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IContourLineSegment __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IContourLineSegment __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IContourLineSegment __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SegmentType )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksContourSegmentEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Curve2D )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IContourLineSegment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IContourLineSegment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IContourLineSegmentVtbl;

    interface IContourLineSegment
    {
        CONST_VTBL struct IContourLineSegmentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IContourLineSegment_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IContourLineSegment_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IContourLineSegment_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IContourLineSegment_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IContourLineSegment_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IContourLineSegment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IContourLineSegment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IContourLineSegment_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IContourLineSegment_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IContourLineSegment_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IContourLineSegment_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IContourLineSegment_get_SegmentType(This,Result)	\
    (This)->lpVtbl -> get_SegmentType(This,Result)

#define IContourLineSegment_get_Curve2D(This,Result)	\
    (This)->lpVtbl -> get_Curve2D(This,Result)


#define IContourLineSegment_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IContourLineSegment_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IContourLineSegment_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IContourLineSegment_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IContourLineSegment_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IContourLineSegment_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IContourLineSegment_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IContourLineSegment_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IContourLineSegment_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IContourLineSegment_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IContourLineSegment_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IContourLineSegment_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_put_X1_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourLineSegment_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_get_X1_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourLineSegment_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_put_Y1_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourLineSegment_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_get_Y1_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourLineSegment_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_put_X2_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourLineSegment_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_get_X2_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourLineSegment_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_put_Y2_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourLineSegment_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_get_Y2_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourLineSegment_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_put_Length_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourLineSegment_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_get_Length_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourLineSegment_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_put_Angle_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourLineSegment_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourLineSegment_get_Angle_Proxy( 
    IContourLineSegment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourLineSegment_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IContourLineSegment_INTERFACE_DEFINED__ */


#ifndef __IContourArc_INTERFACE_DEFINED__
#define __IContourArc_INTERFACE_DEFINED__

/* interface IContourArc */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IContourArc,0xED4A6D97,0x4543,0x4842,0xB2,0xC3,0x97,0x3F,0xB0,0xE9,0x0E,0x87);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("ED4A6D97-4543-4842-B2C3-973FB0E90E87")
    IContourArc : public IContourSegment
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y3( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y3( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IContourArcVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IContourArc __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IContourArc __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IContourArc __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SegmentType )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksContourSegmentEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Curve2D )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ ICurve2D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X3 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X3 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y3 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y3 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IContourArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IContourArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IContourArcVtbl;

    interface IContourArc
    {
        CONST_VTBL struct IContourArcVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IContourArc_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IContourArc_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IContourArc_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IContourArc_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IContourArc_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IContourArc_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IContourArc_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IContourArc_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IContourArc_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IContourArc_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IContourArc_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IContourArc_get_SegmentType(This,Result)	\
    (This)->lpVtbl -> get_SegmentType(This,Result)

#define IContourArc_get_Curve2D(This,Result)	\
    (This)->lpVtbl -> get_Curve2D(This,Result)


#define IContourArc_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define IContourArc_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IContourArc_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IContourArc_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IContourArc_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IContourArc_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IContourArc_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IContourArc_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IContourArc_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IContourArc_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IContourArc_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IContourArc_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IContourArc_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IContourArc_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IContourArc_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IContourArc_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IContourArc_put_X3(This,NewVal)	\
    (This)->lpVtbl -> put_X3(This,NewVal)

#define IContourArc_get_X3(This,PVal)	\
    (This)->lpVtbl -> get_X3(This,PVal)

#define IContourArc_put_Y3(This,NewVal)	\
    (This)->lpVtbl -> put_Y3(This,NewVal)

#define IContourArc_get_Y3(This,PVal)	\
    (This)->lpVtbl -> get_Y3(This,PVal)

#define IContourArc_put_Angle1(This,NewVal)	\
    (This)->lpVtbl -> put_Angle1(This,NewVal)

#define IContourArc_get_Angle1(This,PVal)	\
    (This)->lpVtbl -> get_Angle1(This,PVal)

#define IContourArc_put_Angle2(This,NewVal)	\
    (This)->lpVtbl -> put_Angle2(This,NewVal)

#define IContourArc_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Radius_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Radius_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Direction_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IContourArc_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Direction_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Xc_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Xc_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Yc_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Yc_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_X1_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_X1_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Y1_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Y1_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_X2_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_X2_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Y2_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Y2_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_X3_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_X3_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_X3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Y3_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Y3_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Y3_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Angle1_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Angle1_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IContourArc_put_Angle2_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IContourArc_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IContourArc_get_Angle2_Proxy( 
    IContourArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IContourArc_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IContourArc_INTERFACE_DEFINED__ */


#ifndef __ICurve2D_INTERFACE_DEFINED__
#define __ICurve2D_INTERFACE_DEFINED__

/* interface ICurve2D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICurve2D,0x65C82884,0xC41B,0x47a1,0x8C,0x07,0xE8,0x82,0x0D,0x67,0x18,0xEA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("65C82884-C41B-47a1-8C07-E8820D6718EA")
    ICurve2D : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Intersect( 
            /* [in] */ ICurve2D __RPC_FAR *Curve2,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Tangent( 
            /* [in] */ ICurve2D __RPC_FAR *Curve2,
            /* [out] */ VARIANT __RPC_FAR *Curve1Points,
            /* [out] */ VARIANT __RPC_FAR *Curve2Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE TangentLinePoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CouplingCurvCurv( 
            /* [in] */ ICurve2D __RPC_FAR *Curve2,
            /* [in] */ double Radius,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE PointProjection( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [out] */ double __RPC_FAR *Kx,
            /* [out] */ double __RPC_FAR *Ky,
            /* [out] */ double __RPC_FAR *T,
            /* [out] */ double __RPC_FAR *Angle,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CalculatePolygonByStep( 
            /* [in] */ double Step,
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE MovePoint( 
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ double Lenght,
            /* [in] */ VARIANT_BOOL Direction,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDistancePointPoint( 
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDistanceToPoint( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE PointOn( 
            /* [in] */ double T,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMetricLength( 
            /* [in] */ double T1,
            /* [in] */ double T2,
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParamMin( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ParamMax( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsClosed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNurbsParams( 
            /* [in] */ VARIANT_BOOL Closed,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [out] */ VARIANT __RPC_FAR *Knots,
            /* [out] */ double __RPC_FAR *TMin,
            /* [out] */ double __RPC_FAR *TMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICurve2DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICurve2D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICurve2D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICurve2D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Intersect )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ ICurve2D __RPC_FAR *Curve2,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Tangent )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ ICurve2D __RPC_FAR *Curve2,
            /* [out] */ VARIANT __RPC_FAR *Curve1Points,
            /* [out] */ VARIANT __RPC_FAR *Curve2Points,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *TangentLinePoint )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CouplingCurvCurv )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ ICurve2D __RPC_FAR *Curve2,
            /* [in] */ double Radius,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PointProjection )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [out] */ double __RPC_FAR *Kx,
            /* [out] */ double __RPC_FAR *Ky,
            /* [out] */ double __RPC_FAR *T,
            /* [out] */ double __RPC_FAR *Angle,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CalculatePolygonByStep )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double Step,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *MovePoint )( 
            ICurve2D __RPC_FAR * This,
            /* [out][in] */ double __RPC_FAR *X,
            /* [out][in] */ double __RPC_FAR *Y,
            /* [in] */ double Lenght,
            /* [in] */ VARIANT_BOOL Direction,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDistancePointPoint )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDistanceToPoint )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PointOn )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double T,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMetricLength )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ double T1,
            /* [in] */ double T2,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParamMin )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ParamMax )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsClosed )( 
            ICurve2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNurbsParams )( 
            ICurve2D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Closed,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weights,
            /* [out] */ VARIANT __RPC_FAR *Knots,
            /* [out] */ double __RPC_FAR *TMin,
            /* [out] */ double __RPC_FAR *TMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ICurve2DVtbl;

    interface ICurve2D
    {
        CONST_VTBL struct ICurve2DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICurve2D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICurve2D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICurve2D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICurve2D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICurve2D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICurve2D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICurve2D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICurve2D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICurve2D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICurve2D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICurve2D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICurve2D_Intersect(This,Curve2,Result)	\
    (This)->lpVtbl -> Intersect(This,Curve2,Result)

#define ICurve2D_Tangent(This,Curve2,Curve1Points,Curve2Points,Result)	\
    (This)->lpVtbl -> Tangent(This,Curve2,Curve1Points,Curve2Points,Result)

#define ICurve2D_TangentLinePoint(This,X,Y,Result)	\
    (This)->lpVtbl -> TangentLinePoint(This,X,Y,Result)

#define ICurve2D_CouplingCurvCurv(This,Curve2,Radius,Result)	\
    (This)->lpVtbl -> CouplingCurvCurv(This,Curve2,Radius,Result)

#define ICurve2D_PointProjection(This,X,Y,Kx,Ky,T,Angle,Result)	\
    (This)->lpVtbl -> PointProjection(This,X,Y,Kx,Ky,T,Angle,Result)

#define ICurve2D_CalculatePolygonByStep(This,Step,Result)	\
    (This)->lpVtbl -> CalculatePolygonByStep(This,Step,Result)

#define ICurve2D_MovePoint(This,X,Y,Lenght,Direction,Result)	\
    (This)->lpVtbl -> MovePoint(This,X,Y,Lenght,Direction,Result)

#define ICurve2D_get_Length(This,Result)	\
    (This)->lpVtbl -> get_Length(This,Result)

#define ICurve2D_GetDistancePointPoint(This,X1,Y1,X2,Y2,Result)	\
    (This)->lpVtbl -> GetDistancePointPoint(This,X1,Y1,X2,Y2,Result)

#define ICurve2D_GetDistanceToPoint(This,X,Y,Result)	\
    (This)->lpVtbl -> GetDistanceToPoint(This,X,Y,Result)

#define ICurve2D_PointOn(This,T,X,Y,result)	\
    (This)->lpVtbl -> PointOn(This,T,X,Y,result)

#define ICurve2D_GetMetricLength(This,T1,T2,Result)	\
    (This)->lpVtbl -> GetMetricLength(This,T1,T2,Result)

#define ICurve2D_get_ParamMin(This,Result)	\
    (This)->lpVtbl -> get_ParamMin(This,Result)

#define ICurve2D_get_ParamMax(This,Result)	\
    (This)->lpVtbl -> get_ParamMax(This,Result)

#define ICurve2D_get_IsClosed(This,Result)	\
    (This)->lpVtbl -> get_IsClosed(This,Result)

#define ICurve2D_GetNurbsParams(This,Closed,Points,Weights,Knots,TMin,TMax,Result)	\
    (This)->lpVtbl -> GetNurbsParams(This,Closed,Points,Weights,Knots,TMin,TMax,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_Intersect_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ ICurve2D __RPC_FAR *Curve2,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ICurve2D_Intersect_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_Tangent_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ ICurve2D __RPC_FAR *Curve2,
    /* [out] */ VARIANT __RPC_FAR *Curve1Points,
    /* [out] */ VARIANT __RPC_FAR *Curve2Points,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICurve2D_Tangent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_TangentLinePoint_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ICurve2D_TangentLinePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_CouplingCurvCurv_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ ICurve2D __RPC_FAR *Curve2,
    /* [in] */ double Radius,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ICurve2D_CouplingCurvCurv_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_PointProjection_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [out] */ double __RPC_FAR *Kx,
    /* [out] */ double __RPC_FAR *Ky,
    /* [out] */ double __RPC_FAR *T,
    /* [out] */ double __RPC_FAR *Angle,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICurve2D_PointProjection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_CalculatePolygonByStep_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double Step,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ICurve2D_CalculatePolygonByStep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_MovePoint_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [out][in] */ double __RPC_FAR *X,
    /* [out][in] */ double __RPC_FAR *Y,
    /* [in] */ double Lenght,
    /* [in] */ VARIANT_BOOL Direction,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICurve2D_MovePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurve2D_get_Length_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICurve2D_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_GetDistancePointPoint_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double X1,
    /* [in] */ double Y1,
    /* [in] */ double X2,
    /* [in] */ double Y2,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICurve2D_GetDistancePointPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_GetDistanceToPoint_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICurve2D_GetDistanceToPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_PointOn_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double T,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB ICurve2D_PointOn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_GetMetricLength_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ double T1,
    /* [in] */ double T2,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICurve2D_GetMetricLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurve2D_get_ParamMin_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICurve2D_get_ParamMin_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurve2D_get_ParamMax_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ICurve2D_get_ParamMax_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurve2D_get_IsClosed_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICurve2D_get_IsClosed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICurve2D_GetNurbsParams_Proxy( 
    ICurve2D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Closed,
    /* [out] */ VARIANT __RPC_FAR *Points,
    /* [out] */ VARIANT __RPC_FAR *Weights,
    /* [out] */ VARIANT __RPC_FAR *Knots,
    /* [out] */ double __RPC_FAR *TMin,
    /* [out] */ double __RPC_FAR *TMax,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ICurve2D_GetNurbsParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICurve2D_INTERFACE_DEFINED__ */


#ifndef __IDrawingContours_INTERFACE_DEFINED__
#define __IDrawingContours_INTERFACE_DEFINED__

/* interface IDrawingContours */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingContours,0xDBA3626C,0x12BE,0x4bff,0x8D,0x42,0xB0,0x1A,0x78,0x66,0x6B,0xC9);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DBA3626C-12BE-4bff-8D42-B01A78666BC9")
    IDrawingContours : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DrawingContour( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingContour __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IDrawingContour __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingContoursVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingContours __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingContours __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingContours __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingContours __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingContours __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingContours __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingContours __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDrawingContours __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingContour )( 
            IDrawingContours __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingContour __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDrawingContours __RPC_FAR * This,
            /* [retval][out] */ IDrawingContour __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IDrawingContoursVtbl;

    interface IDrawingContours
    {
        CONST_VTBL struct IDrawingContoursVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingContours_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingContours_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingContours_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingContours_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingContours_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingContours_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingContours_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingContours_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingContours_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingContours_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingContours_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingContours_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDrawingContours_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDrawingContours_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IDrawingContours_get_DrawingContour(This,Index,Result)	\
    (This)->lpVtbl -> get_DrawingContour(This,Index,Result)

#define IDrawingContours_Add(This,Value)	\
    (This)->lpVtbl -> Add(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContours_get_DrawingContour_Proxy( 
    IDrawingContours __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDrawingContour __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingContours_get_DrawingContour_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingContours_Add_Proxy( 
    IDrawingContours __RPC_FAR * This,
    /* [retval][out] */ IDrawingContour __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IDrawingContours_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingContours_INTERFACE_DEFINED__ */


#ifndef __IDrawingContour_INTERFACE_DEFINED__
#define __IDrawingContour_INTERFACE_DEFINED__

/* interface IDrawingContour */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingContour,0x25509C3A,0x7B46,0x4e3f,0xB0,0xE8,0x0E,0x61,0xB7,0x54,0x86,0x64);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("25509C3A-7B46-4e3f-B0E8-0E61B7548664")
    IDrawingContour : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingContourVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingContour __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingContour __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingContour __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IDrawingContour __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IDrawingContour __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IDrawingContourVtbl;

    interface IDrawingContour
    {
        CONST_VTBL struct IDrawingContourVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingContour_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingContour_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingContour_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingContour_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingContour_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingContour_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingContour_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingContour_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingContour_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingContour_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingContour_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingContour_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IDrawingContour_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IDrawingContour_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IDrawingContour_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IDrawingContour_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IDrawingContour_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IDrawingContour_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IDrawingContour_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IDrawingContour_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IDrawingContour_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IDrawingContour_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingContour_get_Style_Proxy( 
    IDrawingContour __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IDrawingContour_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingContour_put_Style_Proxy( 
    IDrawingContour __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IDrawingContour_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingContour_INTERFACE_DEFINED__ */


#ifndef __ICircles_INTERFACE_DEFINED__
#define __ICircles_INTERFACE_DEFINED__

/* interface ICircles */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICircles,0xC8CA9255,0xE5FE,0x4396,0x9C,0x3F,0x75,0xEE,0x73,0x77,0xC5,0x08);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C8CA9255-E5FE-4396-9C3F-75EE7377C508")
    ICircles : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Circle( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICircle __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ICircle __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICirclesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICircles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICircles __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICircles __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICircles __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICircles __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICircles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICircles __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ICircles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Circle )( 
            ICircles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICircle __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ICircles __RPC_FAR * This,
            /* [retval][out] */ ICircle __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ICirclesVtbl;

    interface ICircles
    {
        CONST_VTBL struct ICirclesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICircles_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICircles_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICircles_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICircles_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICircles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICircles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICircles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICircles_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICircles_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICircles_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICircles_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICircles_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ICircles_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ICircles_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ICircles_get_Circle(This,Index,Result)	\
    (This)->lpVtbl -> get_Circle(This,Index,Result)

#define ICircles_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircles_get_Circle_Proxy( 
    ICircles __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ICircle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICircles_get_Circle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICircles_Add_Proxy( 
    ICircles __RPC_FAR * This,
    /* [retval][out] */ ICircle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICircles_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICircles_INTERFACE_DEFINED__ */


#ifndef __ICircle_INTERFACE_DEFINED__
#define __ICircle_INTERFACE_DEFINED__

/* interface ICircle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICircle,0x5C952F95,0xDFED,0x4eee,0xB3,0x9A,0x66,0x99,0xED,0xE0,0x86,0x76);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5C952F95-DFED-4eee-B39A-6699EDE08676")
    ICircle : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICircleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICircle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICircle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICircle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICircle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICircle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICircle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICircle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ICircle __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ICircle __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            ICircle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            ICircle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            ICircle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            ICircle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            ICircle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            ICircle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            ICircle __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } ICircleVtbl;

    interface ICircle
    {
        CONST_VTBL struct ICircleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICircle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICircle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICircle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICircle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICircle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICircle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICircle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICircle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICircle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICircle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICircle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICircle_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ICircle_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ICircle_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ICircle_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ICircle_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ICircle_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ICircle_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ICircle_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ICircle_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ICircle_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define ICircle_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define ICircle_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define ICircle_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define ICircle_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define ICircle_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define ICircle_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define ICircle_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define ICircle_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define ICircle_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define ICircle_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define ICircle_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircle_put_Xc_Proxy( 
    ICircle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircle_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircle_get_Xc_Proxy( 
    ICircle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircle_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircle_put_Yc_Proxy( 
    ICircle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircle_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircle_get_Yc_Proxy( 
    ICircle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircle_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircle_put_X_Proxy( 
    ICircle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircle_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircle_get_X_Proxy( 
    ICircle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircle_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircle_put_Y_Proxy( 
    ICircle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircle_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircle_get_Y_Proxy( 
    ICircle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircle_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircle_put_Radius_Proxy( 
    ICircle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICircle_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircle_get_Radius_Proxy( 
    ICircle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircle_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircle_get_Style_Proxy( 
    ICircle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB ICircle_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircle_put_Style_Proxy( 
    ICircle __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB ICircle_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICircle_INTERFACE_DEFINED__ */


#ifndef __IMacroObjects_INTERFACE_DEFINED__
#define __IMacroObjects_INTERFACE_DEFINED__

/* interface IMacroObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMacroObjects,0x5B3F5454,0x160A,0x4981,0xB0,0x93,0x89,0x0E,0x9A,0x71,0x9A,0xE3);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5B3F5454-160A-4981-B093-890E9A719AE3")
    IMacroObjects : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MacroObject( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [defaultvalue][in] */ VARIANT_BOOL MultyLayer,
            /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMacroObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMacroObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMacroObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMacroObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMacroObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMacroObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMacroObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMacroObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMacroObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMacroObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMacroObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMacroObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IMacroObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IMacroObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IMacroObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MacroObject )( 
            IMacroObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IMacroObjects __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL MultyLayer,
            /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *Value);
        
        END_INTERFACE
    } IMacroObjectsVtbl;

    interface IMacroObjects
    {
        CONST_VTBL struct IMacroObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMacroObjects_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMacroObjects_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMacroObjects_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMacroObjects_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMacroObjects_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMacroObjects_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMacroObjects_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMacroObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMacroObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMacroObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMacroObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMacroObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IMacroObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IMacroObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IMacroObjects_get_MacroObject(This,Index,Result)	\
    (This)->lpVtbl -> get_MacroObject(This,Index,Result)

#define IMacroObjects_Add(This,MultyLayer,Value)	\
    (This)->lpVtbl -> Add(This,MultyLayer,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObjects_get_MacroObject_Proxy( 
    IMacroObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IMacroObjects_get_MacroObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMacroObjects_Add_Proxy( 
    IMacroObjects __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL MultyLayer,
    /* [retval][out] */ IMacroObject __RPC_FAR *__RPC_FAR *Value);


void __RPC_STUB IMacroObjects_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMacroObjects_INTERFACE_DEFINED__ */


#ifndef __IMacroObject_INTERFACE_DEFINED__
#define __IMacroObject_INTERFACE_DEFINED__

/* interface IMacroObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMacroObject,0xB21C70C9,0x53EC,0x4bb7,0xA9,0xDB,0xBC,0xE8,0x52,0xCA,0x67,0x16);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B21C70C9-53EC-4bb7-A9DB-BCE852CA6716")
    IMacroObject : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LibraryFileName( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryFileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LibraryName( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LibraryName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Command( 
            /* [defaultvalue][in] */ long NewVal = 0) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Command( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DoubleClickEditable( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DoubleClickEditable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HotPointsEditable( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HotPointsEditable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExternalEditable( 
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExternalEditable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UserParams( 
            /* [in] */ VARIANT NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_UserParams( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddObjects( 
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPlacement( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPlacement( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [in] */ VARIANT_BOOL Relative,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMacroObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMacroObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMacroObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMacroObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LibraryFileName )( 
            IMacroObject __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryFileName )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LibraryName )( 
            IMacroObject __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LibraryName )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Command )( 
            IMacroObject __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Command )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DoubleClickEditable )( 
            IMacroObject __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DoubleClickEditable )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HotPointsEditable )( 
            IMacroObject __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HotPointsEditable )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ExternalEditable )( 
            IMacroObject __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExternalEditable )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UserParams )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_UserParams )( 
            IMacroObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddObjects )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPlacement )( 
            IMacroObject __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlacement )( 
            IMacroObject __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [in] */ VARIANT_BOOL Relative,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IMacroObjectVtbl;

    interface IMacroObject
    {
        CONST_VTBL struct IMacroObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMacroObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMacroObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMacroObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMacroObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMacroObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMacroObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMacroObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMacroObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMacroObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMacroObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMacroObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMacroObject_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IMacroObject_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IMacroObject_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IMacroObject_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IMacroObject_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IMacroObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IMacroObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IMacroObject_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IMacroObject_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IMacroObject_put_LibraryFileName(This,NewText)	\
    (This)->lpVtbl -> put_LibraryFileName(This,NewText)

#define IMacroObject_get_LibraryFileName(This,PVal)	\
    (This)->lpVtbl -> get_LibraryFileName(This,PVal)

#define IMacroObject_put_LibraryName(This,NewText)	\
    (This)->lpVtbl -> put_LibraryName(This,NewText)

#define IMacroObject_get_LibraryName(This,PVal)	\
    (This)->lpVtbl -> get_LibraryName(This,PVal)

#define IMacroObject_put_Command(This,NewVal)	\
    (This)->lpVtbl -> put_Command(This,NewVal)

#define IMacroObject_get_Command(This,PVal)	\
    (This)->lpVtbl -> get_Command(This,PVal)

#define IMacroObject_put_DoubleClickEditable(This,NewVal)	\
    (This)->lpVtbl -> put_DoubleClickEditable(This,NewVal)

#define IMacroObject_get_DoubleClickEditable(This,PVal)	\
    (This)->lpVtbl -> get_DoubleClickEditable(This,PVal)

#define IMacroObject_put_HotPointsEditable(This,NewVal)	\
    (This)->lpVtbl -> put_HotPointsEditable(This,NewVal)

#define IMacroObject_get_HotPointsEditable(This,PVal)	\
    (This)->lpVtbl -> get_HotPointsEditable(This,PVal)

#define IMacroObject_put_ExternalEditable(This,NewVal)	\
    (This)->lpVtbl -> put_ExternalEditable(This,NewVal)

#define IMacroObject_get_ExternalEditable(This,PVal)	\
    (This)->lpVtbl -> get_ExternalEditable(This,PVal)

#define IMacroObject_put_UserParams(This,NewVal)	\
    (This)->lpVtbl -> put_UserParams(This,NewVal)

#define IMacroObject_get_UserParams(This,PVal)	\
    (This)->lpVtbl -> get_UserParams(This,PVal)

#define IMacroObject_AddObjects(This,Objects,Result)	\
    (This)->lpVtbl -> AddObjects(This,Objects,Result)

#define IMacroObject_GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IMacroObject_SetPlacement(This,X,Y,Angle,MirrorSymmetry,Relative,Result)	\
    (This)->lpVtbl -> SetPlacement(This,X,Y,Angle,MirrorSymmetry,Relative,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_LibraryFileName_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IMacroObject_put_LibraryFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_LibraryFileName_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_LibraryFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_LibraryName_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IMacroObject_put_LibraryName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_LibraryName_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_LibraryName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_Command_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [defaultvalue][in] */ long NewVal);


void __RPC_STUB IMacroObject_put_Command_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_Command_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_Command_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_DoubleClickEditable_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMacroObject_put_DoubleClickEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_DoubleClickEditable_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_DoubleClickEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_HotPointsEditable_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMacroObject_put_HotPointsEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_HotPointsEditable_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_HotPointsEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_ExternalEditable_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IMacroObject_put_ExternalEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_ExternalEditable_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_ExternalEditable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMacroObject_put_UserParams_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [in] */ VARIANT NewVal);


void __RPC_STUB IMacroObject_put_UserParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMacroObject_get_UserParams_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IMacroObject_get_UserParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMacroObject_AddObjects_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMacroObject_AddObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMacroObject_GetPlacement_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Angle,
    /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMacroObject_GetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMacroObject_SetPlacement_Proxy( 
    IMacroObject __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Angle,
    /* [in] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
    /* [in] */ VARIANT_BOOL Relative,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IMacroObject_SetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMacroObject_INTERFACE_DEFINED__ */


#ifndef __IEllipses_INTERFACE_DEFINED__
#define __IEllipses_INTERFACE_DEFINED__

/* interface IEllipses */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEllipses,0x47633C44,0x93BB,0x4f41,0xA6,0xCA,0x4F,0x8C,0xCA,0xEA,0x06,0x59);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("47633C44-93BB-4f41-A6CA-4F8CCAEA0659")
    IEllipses : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Ellipse( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEllipse __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IEllipse __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEllipsesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEllipses __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEllipses __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEllipses __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEllipses __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEllipses __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEllipses __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEllipses __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IEllipses __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Ellipse )( 
            IEllipses __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEllipse __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IEllipses __RPC_FAR * This,
            /* [retval][out] */ IEllipse __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IEllipsesVtbl;

    interface IEllipses
    {
        CONST_VTBL struct IEllipsesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEllipses_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEllipses_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEllipses_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEllipses_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEllipses_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEllipses_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEllipses_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEllipses_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEllipses_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEllipses_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEllipses_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEllipses_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IEllipses_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IEllipses_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IEllipses_get_Ellipse(This,Index,Result)	\
    (This)->lpVtbl -> get_Ellipse(This,Index,Result)

#define IEllipses_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipses_get_Ellipse_Proxy( 
    IEllipses __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IEllipse __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEllipses_get_Ellipse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IEllipses_Add_Proxy( 
    IEllipses __RPC_FAR * This,
    /* [retval][out] */ IEllipse __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEllipses_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEllipses_INTERFACE_DEFINED__ */


#ifndef __IEllipse_INTERFACE_DEFINED__
#define __IEllipse_INTERFACE_DEFINED__

/* interface IEllipse */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEllipse,0xF60C9107,0xD8E2,0x433c,0xA0,0xE3,0xA4,0xE5,0x08,0xD0,0x93,0x53);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F60C9107-D8E2-433c-A0E3-A4E508D09353")
    IEllipse : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SemiAxisA( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SemiAxisA( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SemiAxisB( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SemiAxisB( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEllipseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEllipse __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEllipse __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEllipse __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SemiAxisA )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SemiAxisA )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SemiAxisB )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SemiAxisB )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IEllipse __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IEllipse __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IEllipseVtbl;

    interface IEllipse
    {
        CONST_VTBL struct IEllipseVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEllipse_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEllipse_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEllipse_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEllipse_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEllipse_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEllipse_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEllipse_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEllipse_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEllipse_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEllipse_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEllipse_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEllipse_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IEllipse_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IEllipse_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IEllipse_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IEllipse_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IEllipse_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IEllipse_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IEllipse_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IEllipse_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IEllipse_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IEllipse_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IEllipse_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IEllipse_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IEllipse_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IEllipse_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IEllipse_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IEllipse_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IEllipse_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IEllipse_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IEllipse_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IEllipse_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IEllipse_put_SemiAxisA(This,NewVal)	\
    (This)->lpVtbl -> put_SemiAxisA(This,NewVal)

#define IEllipse_get_SemiAxisA(This,PVal)	\
    (This)->lpVtbl -> get_SemiAxisA(This,PVal)

#define IEllipse_put_SemiAxisB(This,NewVal)	\
    (This)->lpVtbl -> put_SemiAxisB(This,NewVal)

#define IEllipse_get_SemiAxisB(This,PVal)	\
    (This)->lpVtbl -> get_SemiAxisB(This,PVal)

#define IEllipse_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IEllipse_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IEllipse_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IEllipse_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_Xc_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_Xc_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_Yc_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_Yc_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_X1_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_X1_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_Y1_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_Y1_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_X2_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_X2_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_Y2_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_Y2_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_SemiAxisA_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_SemiAxisA_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_SemiAxisA_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_SemiAxisA_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_SemiAxisB_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_SemiAxisB_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_SemiAxisB_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_SemiAxisB_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_Angle_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipse_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_Angle_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipse_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipse_get_Style_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IEllipse_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipse_put_Style_Proxy( 
    IEllipse __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IEllipse_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEllipse_INTERFACE_DEFINED__ */


#ifndef __IEllipseArcs_INTERFACE_DEFINED__
#define __IEllipseArcs_INTERFACE_DEFINED__

/* interface IEllipseArcs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEllipseArcs,0xCC5B7FCB,0xB887,0x4a47,0xAE,0x6B,0x25,0x22,0xDF,0xA2,0x44,0x33);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("CC5B7FCB-B887-4a47-AE6B-2522DFA24433")
    IEllipseArcs : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EllipseArc( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEllipseArc __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IEllipseArc __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEllipseArcsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEllipseArcs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEllipseArcs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEllipseArcs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEllipseArcs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEllipseArcs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEllipseArcs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEllipseArcs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IEllipseArcs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EllipseArc )( 
            IEllipseArcs __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEllipseArc __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IEllipseArcs __RPC_FAR * This,
            /* [retval][out] */ IEllipseArc __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IEllipseArcsVtbl;

    interface IEllipseArcs
    {
        CONST_VTBL struct IEllipseArcsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEllipseArcs_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEllipseArcs_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEllipseArcs_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEllipseArcs_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEllipseArcs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEllipseArcs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEllipseArcs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEllipseArcs_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEllipseArcs_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEllipseArcs_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEllipseArcs_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEllipseArcs_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IEllipseArcs_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IEllipseArcs_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IEllipseArcs_get_EllipseArc(This,Index,Result)	\
    (This)->lpVtbl -> get_EllipseArc(This,Index,Result)

#define IEllipseArcs_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArcs_get_EllipseArc_Proxy( 
    IEllipseArcs __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IEllipseArc __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEllipseArcs_get_EllipseArc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IEllipseArcs_Add_Proxy( 
    IEllipseArcs __RPC_FAR * This,
    /* [retval][out] */ IEllipseArc __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEllipseArcs_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEllipseArcs_INTERFACE_DEFINED__ */


#ifndef __IEllipseArc_INTERFACE_DEFINED__
#define __IEllipseArc_INTERFACE_DEFINED__

/* interface IEllipseArc */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEllipseArc,0x320D837F,0x0B27,0x45b0,0x98,0xB4,0x9D,0x21,0x15,0x6E,0x98,0x57);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("320D837F-0B27-45b0-98B4-9D21156E9857")
    IEllipseArc : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_T1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_T1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_T2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_T2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SemiAxisA( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SemiAxisA( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SemiAxisB( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SemiAxisB( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEllipseArcVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEllipseArc __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEllipseArc __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEllipseArc __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_T1 )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_T1 )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_T2 )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_T2 )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SemiAxisA )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SemiAxisA )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SemiAxisB )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SemiAxisB )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IEllipseArc __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IEllipseArc __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IEllipseArcVtbl;

    interface IEllipseArc
    {
        CONST_VTBL struct IEllipseArcVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEllipseArc_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEllipseArc_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEllipseArc_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEllipseArc_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEllipseArc_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEllipseArc_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEllipseArc_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEllipseArc_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEllipseArc_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEllipseArc_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEllipseArc_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEllipseArc_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IEllipseArc_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IEllipseArc_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IEllipseArc_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IEllipseArc_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IEllipseArc_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IEllipseArc_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IEllipseArc_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IEllipseArc_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IEllipseArc_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IEllipseArc_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IEllipseArc_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IEllipseArc_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IEllipseArc_put_T1(This,NewVal)	\
    (This)->lpVtbl -> put_T1(This,NewVal)

#define IEllipseArc_get_T1(This,PVal)	\
    (This)->lpVtbl -> get_T1(This,PVal)

#define IEllipseArc_put_T2(This,NewVal)	\
    (This)->lpVtbl -> put_T2(This,NewVal)

#define IEllipseArc_get_T2(This,PVal)	\
    (This)->lpVtbl -> get_T2(This,PVal)

#define IEllipseArc_put_Angle1(This,NewVal)	\
    (This)->lpVtbl -> put_Angle1(This,NewVal)

#define IEllipseArc_get_Angle1(This,PVal)	\
    (This)->lpVtbl -> get_Angle1(This,PVal)

#define IEllipseArc_put_Angle2(This,NewVal)	\
    (This)->lpVtbl -> put_Angle2(This,NewVal)

#define IEllipseArc_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define IEllipseArc_put_SemiAxisA(This,NewVal)	\
    (This)->lpVtbl -> put_SemiAxisA(This,NewVal)

#define IEllipseArc_get_SemiAxisA(This,PVal)	\
    (This)->lpVtbl -> get_SemiAxisA(This,PVal)

#define IEllipseArc_put_SemiAxisB(This,NewVal)	\
    (This)->lpVtbl -> put_SemiAxisB(This,NewVal)

#define IEllipseArc_get_SemiAxisB(This,PVal)	\
    (This)->lpVtbl -> get_SemiAxisB(This,PVal)

#define IEllipseArc_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IEllipseArc_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IEllipseArc_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IEllipseArc_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IEllipseArc_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IEllipseArc_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Xc_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Xc_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Yc_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Yc_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_T1_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_T1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_T1_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_T1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_T2_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_T2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_T2_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_T2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Angle1_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Angle1_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Angle2_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Angle2_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_SemiAxisA_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_SemiAxisA_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_SemiAxisA_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_SemiAxisA_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_SemiAxisB_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_SemiAxisB_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_SemiAxisB_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_SemiAxisB_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Angle_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEllipseArc_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Angle_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Direction_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IEllipseArc_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Direction_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IEllipseArc_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEllipseArc_get_Style_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IEllipseArc_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEllipseArc_put_Style_Proxy( 
    IEllipseArc __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IEllipseArc_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEllipseArc_INTERFACE_DEFINED__ */


#ifndef __IPoint_INTERFACE_DEFINED__
#define __IPoint_INTERFACE_DEFINED__

/* interface IPoint */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoint,0xD0C19C87,0x14E7,0x401d,0xAE,0xF5,0xA2,0xE8,0x8E,0x89,0x9F,0x6E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D0C19C87-14E7-401d-AEF5-A2E88E899F6E")
    IPoint : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long NewVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPointVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoint __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoint __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoint __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoint __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoint __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoint __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IPoint __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IPoint __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IPoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IPoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IPoint __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IPoint __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IPoint __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        END_INTERFACE
    } IPointVtbl;

    interface IPoint
    {
        CONST_VTBL struct IPointVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoint_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoint_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoint_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoint_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoint_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoint_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoint_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoint_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoint_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoint_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IPoint_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IPoint_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IPoint_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IPoint_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IPoint_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IPoint_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IPoint_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IPoint_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IPoint_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IPoint_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IPoint_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IPoint_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IPoint_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IPoint_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IPoint_get_Style(This,PVal)	\
    (This)->lpVtbl -> get_Style(This,PVal)

#define IPoint_put_Style(This,NewVal)	\
    (This)->lpVtbl -> put_Style(This,NewVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint_put_X_Proxy( 
    IPoint __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint_get_X_Proxy( 
    IPoint __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint_put_Y_Proxy( 
    IPoint __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint_get_Y_Proxy( 
    IPoint __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint_put_Angle_Proxy( 
    IPoint __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IPoint_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint_get_Angle_Proxy( 
    IPoint __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IPoint_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoint_get_Style_Proxy( 
    IPoint __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPoint_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPoint_put_Style_Proxy( 
    IPoint __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IPoint_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoint_INTERFACE_DEFINED__ */


#ifndef __IPoints_INTERFACE_DEFINED__
#define __IPoints_INTERFACE_DEFINED__

/* interface IPoints */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPoints,0x8C6846A4,0xEE3B,0x4c00,0xA7,0x08,0x5C,0x0F,0xD0,0x1E,0x21,0xB7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8C6846A4-EE3B-4c00-A708-5C0FD01E21B7")
    IPoints : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Point( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPoint __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IPoint __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPointsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPoints __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPoints __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPoints __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPoints __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPoints __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPoints __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPoints __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IPoints __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Point )( 
            IPoints __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPoint __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPoints __RPC_FAR * This,
            /* [retval][out] */ IPoint __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IPointsVtbl;

    interface IPoints
    {
        CONST_VTBL struct IPointsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPoints_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPoints_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPoints_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPoints_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPoints_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPoints_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPoints_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPoints_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPoints_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPoints_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPoints_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPoints_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IPoints_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IPoints_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IPoints_get_Point(This,Index,Result)	\
    (This)->lpVtbl -> get_Point(This,Index,Result)

#define IPoints_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPoints_get_Point_Proxy( 
    IPoints __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPoint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPoints_get_Point_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPoints_Add_Proxy( 
    IPoints __RPC_FAR * This,
    /* [retval][out] */ IPoint __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPoints_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPoints_INTERFACE_DEFINED__ */


#ifndef __ILine_INTERFACE_DEFINED__
#define __ILine_INTERFACE_DEFINED__

/* interface ILine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILine,0x3EA0DA9B,0xF2C0,0x40c4,0xBE,0x36,0x71,0x03,0x50,0x9A,0x93,0x89);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3EA0DA9B-F2C0-40c4-BE36-7103509A9389")
    ILine : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ILine __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ILine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            ILine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            ILine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            ILine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            ILine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ILine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ILine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } ILineVtbl;

    interface ILine
    {
        CONST_VTBL struct ILineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILine_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ILine_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ILine_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ILine_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ILine_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ILine_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ILine_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ILine_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ILine_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ILine_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define ILine_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define ILine_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define ILine_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define ILine_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define ILine_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define ILine_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define ILine_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define ILine_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define ILine_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILine_put_X1_Proxy( 
    ILine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILine_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILine_get_X1_Proxy( 
    ILine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILine_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILine_put_Y1_Proxy( 
    ILine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILine_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILine_get_Y1_Proxy( 
    ILine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILine_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILine_put_X2_Proxy( 
    ILine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILine_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILine_get_X2_Proxy( 
    ILine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILine_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILine_put_Y2_Proxy( 
    ILine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILine_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILine_get_Y2_Proxy( 
    ILine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILine_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILine_put_Angle_Proxy( 
    ILine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ILine_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILine_get_Angle_Proxy( 
    ILine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ILine_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILine_INTERFACE_DEFINED__ */


#ifndef __ILines_INTERFACE_DEFINED__
#define __ILines_INTERFACE_DEFINED__

/* interface ILines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ILines,0x889A9B9C,0x7533,0x4ec5,0x8E,0x2C,0x5E,0xCF,0x82,0x28,0xB0,0x6F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("889A9B9C-7533-4ec5-8E2C-5ECF8228B06F")
    ILines : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Line( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ILine __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ILines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ILines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ILines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ILines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ILines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ILines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ILines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ILines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Line )( 
            ILines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ILine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ILines __RPC_FAR * This,
            /* [retval][out] */ ILine __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ILinesVtbl;

    interface ILines
    {
        CONST_VTBL struct ILinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ILines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ILines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ILines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ILines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ILines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ILines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ILines_get_Line(This,Index,Result)	\
    (This)->lpVtbl -> get_Line(This,Index,Result)

#define ILines_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILines_get_Line_Proxy( 
    ILines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ILine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILines_get_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ILines_Add_Proxy( 
    ILines __RPC_FAR * This,
    /* [retval][out] */ ILine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ILines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILines_INTERFACE_DEFINED__ */


#ifndef __IBezier_INTERFACE_DEFINED__
#define __IBezier_INTERFACE_DEFINED__

/* interface IBezier */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBezier,0x6D51EC19,0x200C,0x47a2,0xAE,0x55,0x05,0x93,0xAD,0x74,0x68,0x51);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6D51EC19-200C-47a2-AE55-0593AD746851")
    IBezier : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PointsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Points( 
            /* [in] */ VARIANT_BOOL AllPoints,
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Points( 
            /* [in] */ VARIANT_BOOL AllPoints,
            /* [retval][out] */ VARIANT __RPC_FAR *Points) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddPoint( 
            /* [in] */ long Index,
            /* [in] */ double XBase,
            /* [in] */ double YBase,
            /* [in] */ double __RPC_FAR *XLeft,
            /* [in] */ double __RPC_FAR *YLeft,
            /* [in] */ double __RPC_FAR *XRight,
            /* [in] */ double __RPC_FAR *YRight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPoint( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *XBase,
            /* [out] */ double __RPC_FAR *YBase,
            /* [out] */ double __RPC_FAR *XLeft,
            /* [out] */ double __RPC_FAR *YLeft,
            /* [out] */ double __RPC_FAR *XRight,
            /* [out] */ double __RPC_FAR *YRight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeletePoint( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBezierVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBezier __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBezier __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBezier __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBezier __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBezier __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBezier __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBezier __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBezier __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBezier __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            IBezier __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PointsCount )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Points )( 
            IBezier __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL AllPoints,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Points )( 
            IBezier __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL AllPoints,
            /* [retval][out] */ VARIANT __RPC_FAR *Points);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddPoint )( 
            IBezier __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double XBase,
            /* [in] */ double YBase,
            /* [in] */ double __RPC_FAR *XLeft,
            /* [in] */ double __RPC_FAR *YLeft,
            /* [in] */ double __RPC_FAR *XRight,
            /* [in] */ double __RPC_FAR *YRight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPoint )( 
            IBezier __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *XBase,
            /* [out] */ double __RPC_FAR *YBase,
            /* [out] */ double __RPC_FAR *XLeft,
            /* [out] */ double __RPC_FAR *YLeft,
            /* [out] */ double __RPC_FAR *XRight,
            /* [out] */ double __RPC_FAR *YRight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeletePoint )( 
            IBezier __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IBezier __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IBezier __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IBezierVtbl;

    interface IBezier
    {
        CONST_VTBL struct IBezierVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBezier_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBezier_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBezier_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBezier_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBezier_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBezier_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBezier_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBezier_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBezier_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBezier_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBezier_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBezier_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBezier_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBezier_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBezier_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBezier_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBezier_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBezier_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBezier_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBezier_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBezier_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define IBezier_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define IBezier_get_PointsCount(This,Result)	\
    (This)->lpVtbl -> get_PointsCount(This,Result)

#define IBezier_put_Points(This,AllPoints,Points)	\
    (This)->lpVtbl -> put_Points(This,AllPoints,Points)

#define IBezier_get_Points(This,AllPoints,Points)	\
    (This)->lpVtbl -> get_Points(This,AllPoints,Points)

#define IBezier_AddPoint(This,Index,XBase,YBase,XLeft,YLeft,XRight,YRight,PVal)	\
    (This)->lpVtbl -> AddPoint(This,Index,XBase,YBase,XLeft,YLeft,XRight,YRight,PVal)

#define IBezier_GetPoint(This,Index,XBase,YBase,XLeft,YLeft,XRight,YRight,PVal)	\
    (This)->lpVtbl -> GetPoint(This,Index,XBase,YBase,XLeft,YLeft,XRight,YRight,PVal)

#define IBezier_DeletePoint(This,Index,Result)	\
    (This)->lpVtbl -> DeletePoint(This,Index,Result)

#define IBezier_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#define IBezier_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IBezier_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBezier_put_Closed_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IBezier_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBezier_get_Closed_Proxy( 
    IBezier __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBezier_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBezier_get_PointsCount_Proxy( 
    IBezier __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBezier_get_PointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBezier_put_Points_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL AllPoints,
    /* [in] */ VARIANT Points);


void __RPC_STUB IBezier_put_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBezier_get_Points_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL AllPoints,
    /* [retval][out] */ VARIANT __RPC_FAR *Points);


void __RPC_STUB IBezier_get_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBezier_AddPoint_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double XBase,
    /* [in] */ double YBase,
    /* [in] */ double __RPC_FAR *XLeft,
    /* [in] */ double __RPC_FAR *YLeft,
    /* [in] */ double __RPC_FAR *XRight,
    /* [in] */ double __RPC_FAR *YRight,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBezier_AddPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBezier_GetPoint_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *XBase,
    /* [out] */ double __RPC_FAR *YBase,
    /* [out] */ double __RPC_FAR *XLeft,
    /* [out] */ double __RPC_FAR *YLeft,
    /* [out] */ double __RPC_FAR *XRight,
    /* [out] */ double __RPC_FAR *YRight,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBezier_GetPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBezier_DeletePoint_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBezier_DeletePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBezier_Clear_Proxy( 
    IBezier __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBezier_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBezier_get_Style_Proxy( 
    IBezier __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBezier_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBezier_put_Style_Proxy( 
    IBezier __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IBezier_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBezier_INTERFACE_DEFINED__ */


#ifndef __IBeziers_INTERFACE_DEFINED__
#define __IBeziers_INTERFACE_DEFINED__

/* interface IBeziers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBeziers,0x57944ECC,0x5491,0x4551,0x9D,0xB9,0xFA,0xBC,0x45,0x12,0x5A,0x63);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("57944ECC-5491-4551-9DB9-FABC45125A63")
    IBeziers : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Bezier( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBezier __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBezier __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBeziersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBeziers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBeziers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBeziers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBeziers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBeziers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBeziers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBeziers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBeziers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Bezier )( 
            IBeziers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBezier __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBeziers __RPC_FAR * This,
            /* [retval][out] */ IBezier __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IBeziersVtbl;

    interface IBeziers
    {
        CONST_VTBL struct IBeziersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBeziers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBeziers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBeziers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBeziers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBeziers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBeziers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBeziers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBeziers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBeziers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBeziers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBeziers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBeziers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBeziers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBeziers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBeziers_get_Bezier(This,Index,Result)	\
    (This)->lpVtbl -> get_Bezier(This,Index,Result)

#define IBeziers_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBeziers_get_Bezier_Proxy( 
    IBeziers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBezier __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBeziers_get_Bezier_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBeziers_Add_Proxy( 
    IBeziers __RPC_FAR * This,
    /* [retval][out] */ IBezier __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBeziers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBeziers_INTERFACE_DEFINED__ */


#ifndef __IRectangles_INTERFACE_DEFINED__
#define __IRectangles_INTERFACE_DEFINED__

/* interface IRectangles */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRectangles,0xD6BC2EE9,0x249F,0x4961,0x89,0xA7,0x88,0xDA,0x85,0x4F,0x35,0xFE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D6BC2EE9-249F-4961-89A7-88DA854F35FE")
    IRectangles : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Rectangle( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRectangle __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRectangle __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRectanglesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRectangles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRectangles __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRectangles __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRectangles __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRectangles __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRectangles __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRectangles __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRectangles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Rectangle )( 
            IRectangles __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRectangle __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRectangles __RPC_FAR * This,
            /* [retval][out] */ IRectangle __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IRectanglesVtbl;

    interface IRectangles
    {
        CONST_VTBL struct IRectanglesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRectangles_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRectangles_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRectangles_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRectangles_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRectangles_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRectangles_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRectangles_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRectangles_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRectangles_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRectangles_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRectangles_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRectangles_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRectangles_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRectangles_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRectangles_get_Rectangle(This,Index,Result)	\
    (This)->lpVtbl -> get_Rectangle(This,Index,Result)

#define IRectangles_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangles_get_Rectangle_Proxy( 
    IRectangles __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRectangle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRectangles_get_Rectangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRectangles_Add_Proxy( 
    IRectangles __RPC_FAR * This,
    /* [retval][out] */ IRectangle __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRectangles_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRectangles_INTERFACE_DEFINED__ */


#ifndef __IRectangle_INTERFACE_DEFINED__
#define __IRectangle_INTERFACE_DEFINED__

/* interface IRectangle */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRectangle,0x42F9FC58,0xFEA0,0x4e52,0xA6,0x04,0x1A,0x00,0x98,0x5A,0xB7,0x72);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("42F9FC58-FEA0-4e52-A604-1A00985AB772")
    IRectangle : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCorner( 
            /* [in] */ long Index,
            /* [out] */ /* external definition not present */ ksCornerTypeEnum __RPC_FAR *Type,
            /* [out] */ double __RPC_FAR *L1,
            /* [out] */ double __RPC_FAR *L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCorner( 
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksCornerTypeEnum Type,
            /* [in] */ double L1,
            /* [in] */ double L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRectangleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRectangle __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRectangle __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRectangle __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IRectangle __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCorner )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ /* external definition not present */ ksCornerTypeEnum __RPC_FAR *Type,
            /* [out] */ double __RPC_FAR *L1,
            /* [out] */ double __RPC_FAR *L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCorner )( 
            IRectangle __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksCornerTypeEnum Type,
            /* [in] */ double L1,
            /* [in] */ double L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IRectangleVtbl;

    interface IRectangle
    {
        CONST_VTBL struct IRectangleVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRectangle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRectangle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRectangle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRectangle_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRectangle_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRectangle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRectangle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRectangle_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRectangle_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRectangle_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRectangle_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRectangle_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IRectangle_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IRectangle_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IRectangle_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IRectangle_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IRectangle_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IRectangle_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IRectangle_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IRectangle_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IRectangle_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define IRectangle_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define IRectangle_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define IRectangle_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define IRectangle_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IRectangle_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IRectangle_put_Height(This,NewVal)	\
    (This)->lpVtbl -> put_Height(This,NewVal)

#define IRectangle_get_Height(This,PVal)	\
    (This)->lpVtbl -> get_Height(This,PVal)

#define IRectangle_put_Width(This,NewVal)	\
    (This)->lpVtbl -> put_Width(This,NewVal)

#define IRectangle_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#define IRectangle_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IRectangle_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IRectangle_GetCorner(This,Index,Type,L1,L2,Result)	\
    (This)->lpVtbl -> GetCorner(This,Index,Type,L1,L2,Result)

#define IRectangle_SetCorner(This,Index,Type,L1,L2,Result)	\
    (This)->lpVtbl -> SetCorner(This,Index,Type,L1,L2,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRectangle_put_X_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRectangle_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangle_get_X_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRectangle_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRectangle_put_Y_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRectangle_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangle_get_Y_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRectangle_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRectangle_put_Angle_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRectangle_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangle_get_Angle_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRectangle_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRectangle_put_Height_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRectangle_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangle_get_Height_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRectangle_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRectangle_put_Width_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRectangle_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangle_get_Width_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRectangle_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRectangle_get_Style_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IRectangle_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRectangle_put_Style_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IRectangle_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRectangle_GetCorner_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ /* external definition not present */ ksCornerTypeEnum __RPC_FAR *Type,
    /* [out] */ double __RPC_FAR *L1,
    /* [out] */ double __RPC_FAR *L2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRectangle_GetCorner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRectangle_SetCorner_Proxy( 
    IRectangle __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ /* external definition not present */ ksCornerTypeEnum Type,
    /* [in] */ double L1,
    /* [in] */ double L2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRectangle_SetCorner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRectangle_INTERFACE_DEFINED__ */


#ifndef __IRegularPolygons_INTERFACE_DEFINED__
#define __IRegularPolygons_INTERFACE_DEFINED__

/* interface IRegularPolygons */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRegularPolygons,0x80377CB2,0x073E,0x4c38,0x85,0x32,0xC4,0x2A,0x07,0x8B,0xA7,0x19);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("80377CB2-073E-4c38-8532-C42A078BA719")
    IRegularPolygons : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RegularPolygon( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRegularPolygon __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRegularPolygon __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRegularPolygonsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRegularPolygons __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRegularPolygons __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRegularPolygons __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRegularPolygons __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRegularPolygons __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRegularPolygons __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRegularPolygons __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRegularPolygons __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RegularPolygon )( 
            IRegularPolygons __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRegularPolygon __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRegularPolygons __RPC_FAR * This,
            /* [retval][out] */ IRegularPolygon __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IRegularPolygonsVtbl;

    interface IRegularPolygons
    {
        CONST_VTBL struct IRegularPolygonsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRegularPolygons_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRegularPolygons_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRegularPolygons_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRegularPolygons_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRegularPolygons_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRegularPolygons_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRegularPolygons_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRegularPolygons_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRegularPolygons_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRegularPolygons_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRegularPolygons_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRegularPolygons_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRegularPolygons_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRegularPolygons_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRegularPolygons_get_RegularPolygon(This,Index,Result)	\
    (This)->lpVtbl -> get_RegularPolygon(This,Index,Result)

#define IRegularPolygons_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygons_get_RegularPolygon_Proxy( 
    IRegularPolygons __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRegularPolygon __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRegularPolygons_get_RegularPolygon_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRegularPolygons_Add_Proxy( 
    IRegularPolygons __RPC_FAR * This,
    /* [retval][out] */ IRegularPolygon __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRegularPolygons_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRegularPolygons_INTERFACE_DEFINED__ */


#ifndef __IRegularPolygon_INTERFACE_DEFINED__
#define __IRegularPolygon_INTERFACE_DEFINED__

/* interface IRegularPolygon */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRegularPolygon,0x51968648,0xF264,0x4904,0xA0,0x7F,0x65,0x36,0x76,0xAE,0x1D,0x35);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("51968648-F264-4904-A07F-653676AE1D35")
    IRegularPolygon : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Describe( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Describe( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCorner( 
            /* [in] */ long Index,
            /* [out] */ /* external definition not present */ ksCornerTypeEnum __RPC_FAR *Type,
            /* [out] */ double __RPC_FAR *L1,
            /* [out] */ double __RPC_FAR *L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCorner( 
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksCornerTypeEnum Type,
            /* [in] */ double L1,
            /* [in] */ double L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRegularPolygonVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRegularPolygon __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRegularPolygon __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRegularPolygon __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Describe )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Describe )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IRegularPolygon __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCorner )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ /* external definition not present */ ksCornerTypeEnum __RPC_FAR *Type,
            /* [out] */ double __RPC_FAR *L1,
            /* [out] */ double __RPC_FAR *L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetCorner )( 
            IRegularPolygon __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ /* external definition not present */ ksCornerTypeEnum Type,
            /* [in] */ double L1,
            /* [in] */ double L2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IRegularPolygonVtbl;

    interface IRegularPolygon
    {
        CONST_VTBL struct IRegularPolygonVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRegularPolygon_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRegularPolygon_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRegularPolygon_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRegularPolygon_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRegularPolygon_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRegularPolygon_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRegularPolygon_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRegularPolygon_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRegularPolygon_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRegularPolygon_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRegularPolygon_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRegularPolygon_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IRegularPolygon_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IRegularPolygon_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IRegularPolygon_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IRegularPolygon_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IRegularPolygon_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IRegularPolygon_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IRegularPolygon_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IRegularPolygon_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IRegularPolygon_put_Count(This,NewVal)	\
    (This)->lpVtbl -> put_Count(This,NewVal)

#define IRegularPolygon_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)

#define IRegularPolygon_put_Xc(This,NewVal)	\
    (This)->lpVtbl -> put_Xc(This,NewVal)

#define IRegularPolygon_get_Xc(This,PVal)	\
    (This)->lpVtbl -> get_Xc(This,PVal)

#define IRegularPolygon_put_Yc(This,NewVal)	\
    (This)->lpVtbl -> put_Yc(This,NewVal)

#define IRegularPolygon_get_Yc(This,PVal)	\
    (This)->lpVtbl -> get_Yc(This,PVal)

#define IRegularPolygon_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IRegularPolygon_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IRegularPolygon_put_Radius(This,NewVal)	\
    (This)->lpVtbl -> put_Radius(This,NewVal)

#define IRegularPolygon_get_Radius(This,PVal)	\
    (This)->lpVtbl -> get_Radius(This,PVal)

#define IRegularPolygon_put_Describe(This,NewVal)	\
    (This)->lpVtbl -> put_Describe(This,NewVal)

#define IRegularPolygon_get_Describe(This,PVal)	\
    (This)->lpVtbl -> get_Describe(This,PVal)

#define IRegularPolygon_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IRegularPolygon_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IRegularPolygon_GetCorner(This,Index,Type,L1,L2,Result)	\
    (This)->lpVtbl -> GetCorner(This,Index,Type,L1,L2,Result)

#define IRegularPolygon_SetCorner(This,Index,Type,L1,L2,Result)	\
    (This)->lpVtbl -> SetCorner(This,Index,Type,L1,L2,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Count_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IRegularPolygon_put_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Count_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IRegularPolygon_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Xc_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRegularPolygon_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Xc_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRegularPolygon_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Yc_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRegularPolygon_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Yc_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRegularPolygon_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Angle_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRegularPolygon_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Angle_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRegularPolygon_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Radius_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRegularPolygon_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Radius_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRegularPolygon_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Describe_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IRegularPolygon_put_Describe_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Describe_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRegularPolygon_get_Describe_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_get_Style_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IRegularPolygon_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_put_Style_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IRegularPolygon_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_GetCorner_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ /* external definition not present */ ksCornerTypeEnum __RPC_FAR *Type,
    /* [out] */ double __RPC_FAR *L1,
    /* [out] */ double __RPC_FAR *L2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRegularPolygon_GetCorner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRegularPolygon_SetCorner_Proxy( 
    IRegularPolygon __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ /* external definition not present */ ksCornerTypeEnum Type,
    /* [in] */ double L1,
    /* [in] */ double L2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRegularPolygon_SetCorner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRegularPolygon_INTERFACE_DEFINED__ */


#ifndef __IInsertionObject_INTERFACE_DEFINED__
#define __IInsertionObject_INTERFACE_DEFINED__

/* interface IInsertionObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionObject,0xB9E9CE68,0x371D,0x4600,0x92,0x33,0x84,0xD8,0x9A,0x01,0x5C,0x55);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B9E9CE68-371D-4600-9233-84D89A015C55")
    IInsertionObject : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPlacement( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPlacement( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionType( 
            /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineScale( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineScale( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionDefinition( 
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionDefinition( 
            /* [in] */ IInsertionDefinition __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPlacement )( 
            IInsertionObject __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlacement )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IInsertionObject __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionType )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionDefinition )( 
            IInsertionObject __RPC_FAR * This,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertionDefinition )( 
            IInsertionObject __RPC_FAR * This,
            /* [in] */ IInsertionDefinition __RPC_FAR *PVal);
        
        END_INTERFACE
    } IInsertionObjectVtbl;

    interface IInsertionObject
    {
        CONST_VTBL struct IInsertionObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertionObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertionObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertionObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertionObject_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IInsertionObject_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IInsertionObject_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IInsertionObject_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IInsertionObject_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IInsertionObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IInsertionObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IInsertionObject_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IInsertionObject_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IInsertionObject_GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IInsertionObject_SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IInsertionObject_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IInsertionObject_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IInsertionObject_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IInsertionObject_get_InsertionType(This,PVal)	\
    (This)->lpVtbl -> get_InsertionType(This,PVal)

#define IInsertionObject_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define IInsertionObject_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define IInsertionObject_get_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> get_InsertionDefinition(This,PVal)

#define IInsertionObject_put_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> put_InsertionDefinition(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertionObject_GetPlacement_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Angle,
    /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IInsertionObject_GetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertionObject_SetPlacement_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Angle,
    /* [in] */ VARIANT_BOOL MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IInsertionObject_SetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionObject_put_Name_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IInsertionObject_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionObject_get_Name_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IInsertionObject_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionObject_get_FileName_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IInsertionObject_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionObject_get_InsertionType_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IInsertionObject_get_InsertionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionObject_put_DimensionLineScale_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IInsertionObject_put_DimensionLineScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionObject_get_DimensionLineScale_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IInsertionObject_get_DimensionLineScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionObject_get_InsertionDefinition_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IInsertionObject_get_InsertionDefinition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionObject_put_InsertionDefinition_Proxy( 
    IInsertionObject __RPC_FAR * This,
    /* [in] */ IInsertionDefinition __RPC_FAR *PVal);


void __RPC_STUB IInsertionObject_put_InsertionDefinition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionObject_INTERFACE_DEFINED__ */


#ifndef __IInsertionObjects_INTERFACE_DEFINED__
#define __IInsertionObjects_INTERFACE_DEFINED__

/* interface IInsertionObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionObjects,0xC485550B,0x29E3,0x4f2a,0xA8,0x5C,0xC2,0x79,0x5E,0x0F,0x1F,0x86);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C485550B-29E3-4f2a-A85C-C2795E0F1F86")
    IInsertionObjects : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionObject( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsertionObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ IInsertionDefinition __RPC_FAR *Definition,
            /* [retval][out] */ IInsertionObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertionObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertionObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertionObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertionObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IInsertionObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IInsertionObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionObject )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsertionObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IInsertionObjects __RPC_FAR * This,
            /* [in] */ IInsertionDefinition __RPC_FAR *Definition,
            /* [retval][out] */ IInsertionObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IInsertionObjectsVtbl;

    interface IInsertionObjects
    {
        CONST_VTBL struct IInsertionObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionObjects_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionObjects_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionObjects_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionObjects_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionObjects_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionObjects_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionObjects_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertionObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertionObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertionObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertionObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IInsertionObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IInsertionObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IInsertionObjects_get_InsertionObject(This,Index,Result)	\
    (This)->lpVtbl -> get_InsertionObject(This,Index,Result)

#define IInsertionObjects_Add(This,Definition,Result)	\
    (This)->lpVtbl -> Add(This,Definition,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionObjects_get_InsertionObject_Proxy( 
    IInsertionObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IInsertionObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInsertionObjects_get_InsertionObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertionObjects_Add_Proxy( 
    IInsertionObjects __RPC_FAR * This,
    /* [in] */ IInsertionDefinition __RPC_FAR *Definition,
    /* [retval][out] */ IInsertionObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInsertionObjects_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionObjects_INTERFACE_DEFINED__ */


#ifndef __IInsertionFragment_INTERFACE_DEFINED__
#define __IInsertionFragment_INTERFACE_DEFINED__

/* interface IInsertionFragment */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionFragment,0x3D99B82C,0xCD88,0x406d,0xA9,0x46,0x2D,0x8C,0x8E,0x94,0xEE,0x73);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3D99B82C-CD88-406d-A946-2D8C8E94EE73")
    IInsertionFragment : public IInsertionObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MultiLayer( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MultiLayer( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variables( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Variable( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VariablesCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VariableTable( 
            /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionFragmentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionFragment __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionFragment __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionFragment __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPlacement )( 
            IInsertionFragment __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlacement )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IInsertionFragment __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionType )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionDefinition )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertionDefinition )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ IInsertionDefinition __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MultiLayer )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MultiLayer )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variables )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Variable )( 
            IInsertionFragment __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariablesCount )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VariableTable )( 
            IInsertionFragment __RPC_FAR * This,
            /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IInsertionFragmentVtbl;

    interface IInsertionFragment
    {
        CONST_VTBL struct IInsertionFragmentVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionFragment_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionFragment_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionFragment_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionFragment_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionFragment_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionFragment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionFragment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionFragment_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertionFragment_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertionFragment_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertionFragment_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertionFragment_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IInsertionFragment_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IInsertionFragment_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IInsertionFragment_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IInsertionFragment_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IInsertionFragment_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IInsertionFragment_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IInsertionFragment_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IInsertionFragment_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IInsertionFragment_GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IInsertionFragment_SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IInsertionFragment_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IInsertionFragment_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IInsertionFragment_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IInsertionFragment_get_InsertionType(This,PVal)	\
    (This)->lpVtbl -> get_InsertionType(This,PVal)

#define IInsertionFragment_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define IInsertionFragment_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define IInsertionFragment_get_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> get_InsertionDefinition(This,PVal)

#define IInsertionFragment_put_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> put_InsertionDefinition(This,PVal)


#define IInsertionFragment_put_Scale(This,NewVal)	\
    (This)->lpVtbl -> put_Scale(This,NewVal)

#define IInsertionFragment_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IInsertionFragment_put_MultiLayer(This,Val)	\
    (This)->lpVtbl -> put_MultiLayer(This,Val)

#define IInsertionFragment_get_MultiLayer(This,PVal)	\
    (This)->lpVtbl -> get_MultiLayer(This,PVal)

#define IInsertionFragment_get_Variables(This,Result)	\
    (This)->lpVtbl -> get_Variables(This,Result)

#define IInsertionFragment_get_Variable(This,Index,Result)	\
    (This)->lpVtbl -> get_Variable(This,Index,Result)

#define IInsertionFragment_get_VariablesCount(This,Result)	\
    (This)->lpVtbl -> get_VariablesCount(This,Result)

#define IInsertionFragment_get_VariableTable(This,Result)	\
    (This)->lpVtbl -> get_VariableTable(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_put_Scale_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IInsertionFragment_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_get_Scale_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IInsertionFragment_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_put_MultiLayer_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IInsertionFragment_put_MultiLayer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_get_MultiLayer_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IInsertionFragment_get_MultiLayer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_get_Variables_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB IInsertionFragment_get_Variables_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_get_Variable_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IVariable7 __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInsertionFragment_get_Variable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_get_VariablesCount_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IInsertionFragment_get_VariablesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionFragment_get_VariableTable_Proxy( 
    IInsertionFragment __RPC_FAR * This,
    /* [retval][out] */ IVariableTable __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInsertionFragment_get_VariableTable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionFragment_INTERFACE_DEFINED__ */


#ifndef __IInsertionView_INTERFACE_DEFINED__
#define __IInsertionView_INTERFACE_DEFINED__

/* interface IInsertionView */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionView,0x0C8FC5A9,0x57A8,0x4971,0x8E,0x6C,0x68,0x93,0x32,0x69,0xD4,0x2E);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0C8FC5A9-57A8-4971-8E6C-68933269D42E")
    IInsertionView : public IInsertionObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ViewNumber( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewNumber( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ViewName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ThinLines( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ThinLines( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OwnerDocumentParams( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OwnerDocumentParams( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionViewVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionView __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionView __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionView __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPlacement )( 
            IInsertionView __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlacement )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IInsertionView __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionType )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionDefinition )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertionDefinition )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ IInsertionDefinition __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ViewNumber )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewNumber )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ViewName )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ThinLines )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ThinLines )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_OwnerDocumentParams )( 
            IInsertionView __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OwnerDocumentParams )( 
            IInsertionView __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IInsertionViewVtbl;

    interface IInsertionView
    {
        CONST_VTBL struct IInsertionViewVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionView_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionView_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionView_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionView_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionView_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionView_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionView_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionView_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertionView_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertionView_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertionView_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertionView_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IInsertionView_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IInsertionView_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IInsertionView_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IInsertionView_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IInsertionView_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IInsertionView_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IInsertionView_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IInsertionView_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IInsertionView_GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IInsertionView_SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IInsertionView_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IInsertionView_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IInsertionView_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IInsertionView_get_InsertionType(This,PVal)	\
    (This)->lpVtbl -> get_InsertionType(This,PVal)

#define IInsertionView_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define IInsertionView_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define IInsertionView_get_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> get_InsertionDefinition(This,PVal)

#define IInsertionView_put_InsertionDefinition(This,PVal)	\
    (This)->lpVtbl -> put_InsertionDefinition(This,PVal)


#define IInsertionView_put_ViewNumber(This,NewVal)	\
    (This)->lpVtbl -> put_ViewNumber(This,NewVal)

#define IInsertionView_get_ViewNumber(This,PVal)	\
    (This)->lpVtbl -> get_ViewNumber(This,PVal)

#define IInsertionView_get_ViewName(This,PVal)	\
    (This)->lpVtbl -> get_ViewName(This,PVal)

#define IInsertionView_put_ThinLines(This,Val)	\
    (This)->lpVtbl -> put_ThinLines(This,Val)

#define IInsertionView_get_ThinLines(This,PVal)	\
    (This)->lpVtbl -> get_ThinLines(This,PVal)

#define IInsertionView_put_OwnerDocumentParams(This,Val)	\
    (This)->lpVtbl -> put_OwnerDocumentParams(This,Val)

#define IInsertionView_get_OwnerDocumentParams(This,PVal)	\
    (This)->lpVtbl -> get_OwnerDocumentParams(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionView_put_ViewNumber_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IInsertionView_put_ViewNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionView_get_ViewNumber_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IInsertionView_get_ViewNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionView_get_ViewName_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IInsertionView_get_ViewName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionView_put_ThinLines_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IInsertionView_put_ThinLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionView_get_ThinLines_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IInsertionView_get_ThinLines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionView_put_OwnerDocumentParams_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IInsertionView_put_OwnerDocumentParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionView_get_OwnerDocumentParams_Proxy( 
    IInsertionView __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IInsertionView_get_OwnerDocumentParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionView_INTERFACE_DEFINED__ */


#ifndef __IInsertionDefinition_INTERFACE_DEFINED__
#define __IInsertionDefinition_INTERFACE_DEFINED__

/* interface IInsertionDefinition */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionDefinition,0x66907239,0x09BA,0x4456,0xAC,0x9A,0x31,0x88,0x04,0x09,0x96,0x28);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("66907239-09BA-4456-AC9A-318804099628")
    IInsertionDefinition : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionType( 
            /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR NewText) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Open( 
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ IKompasDocument2D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionObjectsCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionDefinitionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionDefinition __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionDefinition __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionType )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible,
            /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
            /* [retval][out] */ IKompasDocument2D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionObjectsCount )( 
            IInsertionDefinition __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IInsertionDefinitionVtbl;

    interface IInsertionDefinition
    {
        CONST_VTBL struct IInsertionDefinitionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionDefinition_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionDefinition_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionDefinition_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionDefinition_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionDefinition_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionDefinition_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionDefinition_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionDefinition_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IInsertionDefinition_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IInsertionDefinition_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IInsertionDefinition_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IInsertionDefinition_get_InsertionType(This,Val)	\
    (This)->lpVtbl -> get_InsertionType(This,Val)

#define IInsertionDefinition_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IInsertionDefinition_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IInsertionDefinition_put_FileName(This,PVal)	\
    (This)->lpVtbl -> put_FileName(This,PVal)

#define IInsertionDefinition_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IInsertionDefinition_Open(This,Visible,ReadOnly,Result)	\
    (This)->lpVtbl -> Open(This,Visible,ReadOnly,Result)

#define IInsertionDefinition_get_InsertionObjectsCount(This,PVal)	\
    (This)->lpVtbl -> get_InsertionObjectsCount(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_get_InsertionType_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksInsertionTypeEnum __RPC_FAR *Val);


void __RPC_STUB IInsertionDefinition_get_InsertionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_put_Name_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [in] */ BSTR NewText);


void __RPC_STUB IInsertionDefinition_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_get_Name_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IInsertionDefinition_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_put_FileName_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB IInsertionDefinition_put_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_get_FileName_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IInsertionDefinition_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_Open_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible,
    /* [defaultvalue][in] */ VARIANT_BOOL ReadOnly,
    /* [retval][out] */ IKompasDocument2D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IInsertionDefinition_Open_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionDefinition_get_InsertionObjectsCount_Proxy( 
    IInsertionDefinition __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IInsertionDefinition_get_InsertionObjectsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionDefinition_INTERFACE_DEFINED__ */


#ifndef __IInsertionsManager_INTERFACE_DEFINED__
#define __IInsertionsManager_INTERFACE_DEFINED__

/* interface IInsertionsManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IInsertionsManager,0xB43FA13A,0x9488,0x422c,0xA9,0xF3,0xD2,0x79,0xFD,0xA2,0x96,0xBB);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B43FA13A-9488-422c-A9F3-D279FDA296BB")
    IInsertionsManager : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionDefinitions( 
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionDefinition( 
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddDefinition( 
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [in] */ BSTR Name,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DefinitionsCount( 
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInsertionsManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IInsertionsManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IInsertionsManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IInsertionsManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionDefinitions )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionDefinition )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddDefinition )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [in] */ BSTR Name,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DefinitionsCount )( 
            IInsertionsManager __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        END_INTERFACE
    } IInsertionsManagerVtbl;

    interface IInsertionsManager
    {
        CONST_VTBL struct IInsertionsManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInsertionsManager_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInsertionsManager_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInsertionsManager_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInsertionsManager_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInsertionsManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInsertionsManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInsertionsManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInsertionsManager_get_InsertionDefinitions(This,type,PVal)	\
    (This)->lpVtbl -> get_InsertionDefinitions(This,type,PVal)

#define IInsertionsManager_get_InsertionDefinition(This,type,Index,PVal)	\
    (This)->lpVtbl -> get_InsertionDefinition(This,type,Index,PVal)

#define IInsertionsManager_AddDefinition(This,type,Name,FileName,PVal)	\
    (This)->lpVtbl -> AddDefinition(This,type,Name,FileName,PVal)

#define IInsertionsManager_get_DefinitionsCount(This,type,PVal)	\
    (This)->lpVtbl -> get_DefinitionsCount(This,type,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionsManager_get_InsertionDefinitions_Proxy( 
    IInsertionsManager __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IInsertionsManager_get_InsertionDefinitions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionsManager_get_InsertionDefinition_Proxy( 
    IInsertionsManager __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IInsertionsManager_get_InsertionDefinition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IInsertionsManager_AddDefinition_Proxy( 
    IInsertionsManager __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
    /* [in] */ BSTR Name,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ IInsertionDefinition __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IInsertionsManager_AddDefinition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IInsertionsManager_get_DefinitionsCount_Proxy( 
    IInsertionsManager __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksInsertionTypeEnum type,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IInsertionsManager_get_DefinitionsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInsertionsManager_INTERFACE_DEFINED__ */


#ifndef __IPolyLine2D_INTERFACE_DEFINED__
#define __IPolyLine2D_INTERFACE_DEFINED__

/* interface IPolyLine2D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPolyLine2D,0x4D0DA413,0x9507,0x4795,0x89,0x6F,0xE0,0x49,0xFA,0x6E,0x44,0xDD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4D0DA413-9507-4795-896F-E049FA6E44DD")
    IPolyLine2D : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PointsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Points( 
            /* [in] */ VARIANT Points) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Points( 
            /* [retval][out] */ VARIANT __RPC_FAR *Points) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddPoint( 
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPoint( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeletePoint( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPolyLine2DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPolyLine2D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPolyLine2D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPolyLine2D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PointsCount )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Points )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ VARIANT Points);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Points )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Points);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddPoint )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPoint )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeletePoint )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IPolyLine2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IPolyLine2D __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IPolyLine2DVtbl;

    interface IPolyLine2D
    {
        CONST_VTBL struct IPolyLine2DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPolyLine2D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPolyLine2D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPolyLine2D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPolyLine2D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPolyLine2D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPolyLine2D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPolyLine2D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPolyLine2D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPolyLine2D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPolyLine2D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPolyLine2D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPolyLine2D_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IPolyLine2D_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IPolyLine2D_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IPolyLine2D_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IPolyLine2D_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IPolyLine2D_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IPolyLine2D_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IPolyLine2D_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IPolyLine2D_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IPolyLine2D_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define IPolyLine2D_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define IPolyLine2D_get_PointsCount(This,Result)	\
    (This)->lpVtbl -> get_PointsCount(This,Result)

#define IPolyLine2D_put_Points(This,Points)	\
    (This)->lpVtbl -> put_Points(This,Points)

#define IPolyLine2D_get_Points(This,Points)	\
    (This)->lpVtbl -> get_Points(This,Points)

#define IPolyLine2D_AddPoint(This,Index,X,Y,PVal)	\
    (This)->lpVtbl -> AddPoint(This,Index,X,Y,PVal)

#define IPolyLine2D_GetPoint(This,Index,X,Y,PVal)	\
    (This)->lpVtbl -> GetPoint(This,Index,X,Y,PVal)

#define IPolyLine2D_DeletePoint(This,Index,Result)	\
    (This)->lpVtbl -> DeletePoint(This,Index,Result)

#define IPolyLine2D_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#define IPolyLine2D_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IPolyLine2D_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_put_Closed_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPolyLine2D_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_get_Closed_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine2D_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_get_PointsCount_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IPolyLine2D_get_PointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_put_Points_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [in] */ VARIANT Points);


void __RPC_STUB IPolyLine2D_put_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_get_Points_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Points);


void __RPC_STUB IPolyLine2D_get_Points_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_AddPoint_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPolyLine2D_AddPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_GetPoint_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPolyLine2D_GetPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_DeletePoint_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine2D_DeletePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_Clear_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IPolyLine2D_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_get_Style_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IPolyLine2D_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPolyLine2D_put_Style_Proxy( 
    IPolyLine2D __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IPolyLine2D_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPolyLine2D_INTERFACE_DEFINED__ */


#ifndef __IPolyLines2D_INTERFACE_DEFINED__
#define __IPolyLines2D_INTERFACE_DEFINED__

/* interface IPolyLines2D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPolyLines2D,0xD1A9CB2D,0xA259,0x4ccc,0x9C,0xD4,0xFA,0x00,0x64,0x94,0xBC,0xA7);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D1A9CB2D-A259-4ccc-9CD4-FA006494BCA7")
    IPolyLines2D : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PolyLine2D( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPolyLine2D __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IPolyLine2D __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPolyLines2DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPolyLines2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPolyLines2D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPolyLines2D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPolyLines2D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPolyLines2D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPolyLines2D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPolyLines2D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IPolyLines2D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PolyLine2D )( 
            IPolyLines2D __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IPolyLine2D __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPolyLines2D __RPC_FAR * This,
            /* [retval][out] */ IPolyLine2D __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IPolyLines2DVtbl;

    interface IPolyLines2D
    {
        CONST_VTBL struct IPolyLines2DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPolyLines2D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPolyLines2D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPolyLines2D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPolyLines2D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPolyLines2D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPolyLines2D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPolyLines2D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPolyLines2D_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPolyLines2D_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPolyLines2D_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPolyLines2D_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPolyLines2D_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IPolyLines2D_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IPolyLines2D_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IPolyLines2D_get_PolyLine2D(This,Index,Result)	\
    (This)->lpVtbl -> get_PolyLine2D(This,Index,Result)

#define IPolyLines2D_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPolyLines2D_get_PolyLine2D_Proxy( 
    IPolyLines2D __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IPolyLine2D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPolyLines2D_get_PolyLine2D_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPolyLines2D_Add_Proxy( 
    IPolyLines2D __RPC_FAR * This,
    /* [retval][out] */ IPolyLine2D __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IPolyLines2D_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPolyLines2D_INTERFACE_DEFINED__ */


#ifndef __IEquidistants_INTERFACE_DEFINED__
#define __IEquidistants_INTERFACE_DEFINED__

/* interface IEquidistants */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEquidistants,0x86182E5E,0x8FA3,0x4283,0x9D,0xC5,0x43,0xD1,0x67,0x3C,0x80,0xDA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("86182E5E-8FA3-4283-9DC5-43D1673C80DA")
    IEquidistants : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Equidistant( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEquidistant __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IEquidistant __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEquidistantsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEquidistants __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEquidistants __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEquidistants __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEquidistants __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEquidistants __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEquidistants __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEquidistants __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IEquidistants __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Equidistant )( 
            IEquidistants __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IEquidistant __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IEquidistants __RPC_FAR * This,
            /* [retval][out] */ IEquidistant __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IEquidistantsVtbl;

    interface IEquidistants
    {
        CONST_VTBL struct IEquidistantsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEquidistants_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEquidistants_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEquidistants_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEquidistants_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEquidistants_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEquidistants_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEquidistants_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEquidistants_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEquidistants_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEquidistants_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEquidistants_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEquidistants_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IEquidistants_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IEquidistants_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IEquidistants_get_Equidistant(This,Index,Result)	\
    (This)->lpVtbl -> get_Equidistant(This,Index,Result)

#define IEquidistants_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistants_get_Equidistant_Proxy( 
    IEquidistants __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IEquidistant __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEquidistants_get_Equidistant_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IEquidistants_Add_Proxy( 
    IEquidistants __RPC_FAR * This,
    /* [retval][out] */ IEquidistant __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEquidistants_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEquidistants_INTERFACE_DEFINED__ */


#ifndef __IEquidistant_INTERFACE_DEFINED__
#define __IEquidistant_INTERFACE_DEFINED__

/* interface IEquidistant */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IEquidistant,0xEE6713F9,0xAD9A,0x466d,0x9F,0xB9,0xD1,0x92,0x35,0xE4,0x2C,0x95);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EE6713F9-AD9A-466d-9FB9-D19235E42C95")
    IEquidistant : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Side( 
            /* [in] */ /* external definition not present */ ksEquidistantTypeEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Side( 
            /* [retval][out] */ /* external definition not present */ ksEquidistantTypeEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CutMode( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CutMode( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DegenerateSegment( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DegenerateSegment( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LeftRadius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LeftRadius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_RightRadius( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RightRadius( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEquidistantVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IEquidistant __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IEquidistant __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IEquidistant __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Side )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksEquidistantTypeEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Side )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksEquidistantTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CutMode )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CutMode )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DegenerateSegment )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DegenerateSegment )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LeftRadius )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LeftRadius )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_RightRadius )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RightRadius )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IEquidistant __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IEquidistant __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } IEquidistantVtbl;

    interface IEquidistant
    {
        CONST_VTBL struct IEquidistantVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEquidistant_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEquidistant_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEquidistant_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEquidistant_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEquidistant_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEquidistant_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEquidistant_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEquidistant_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IEquidistant_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IEquidistant_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IEquidistant_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IEquidistant_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IEquidistant_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IEquidistant_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IEquidistant_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IEquidistant_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IEquidistant_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IEquidistant_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IEquidistant_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IEquidistant_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IEquidistant_get_BaseObject(This,Result)	\
    (This)->lpVtbl -> get_BaseObject(This,Result)

#define IEquidistant_put_BaseObject(This,Value)	\
    (This)->lpVtbl -> put_BaseObject(This,Value)

#define IEquidistant_put_Side(This,NewVal)	\
    (This)->lpVtbl -> put_Side(This,NewVal)

#define IEquidistant_get_Side(This,PVal)	\
    (This)->lpVtbl -> get_Side(This,PVal)

#define IEquidistant_put_CutMode(This,NewVal)	\
    (This)->lpVtbl -> put_CutMode(This,NewVal)

#define IEquidistant_get_CutMode(This,PVal)	\
    (This)->lpVtbl -> get_CutMode(This,PVal)

#define IEquidistant_put_DegenerateSegment(This,NewVal)	\
    (This)->lpVtbl -> put_DegenerateSegment(This,NewVal)

#define IEquidistant_get_DegenerateSegment(This,PVal)	\
    (This)->lpVtbl -> get_DegenerateSegment(This,PVal)

#define IEquidistant_put_LeftRadius(This,NewVal)	\
    (This)->lpVtbl -> put_LeftRadius(This,NewVal)

#define IEquidistant_get_LeftRadius(This,PVal)	\
    (This)->lpVtbl -> get_LeftRadius(This,PVal)

#define IEquidistant_put_RightRadius(This,NewVal)	\
    (This)->lpVtbl -> put_RightRadius(This,NewVal)

#define IEquidistant_get_RightRadius(This,PVal)	\
    (This)->lpVtbl -> get_RightRadius(This,PVal)

#define IEquidistant_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IEquidistant_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_BaseObject_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IEquidistant_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_BaseObject_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Value);


void __RPC_STUB IEquidistant_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_Side_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksEquidistantTypeEnum NewVal);


void __RPC_STUB IEquidistant_put_Side_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_Side_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksEquidistantTypeEnum __RPC_FAR *PVal);


void __RPC_STUB IEquidistant_get_Side_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_CutMode_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IEquidistant_put_CutMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_CutMode_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IEquidistant_get_CutMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_DegenerateSegment_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IEquidistant_put_DegenerateSegment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_DegenerateSegment_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IEquidistant_get_DegenerateSegment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_LeftRadius_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEquidistant_put_LeftRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_LeftRadius_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEquidistant_get_LeftRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_RightRadius_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IEquidistant_put_RightRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_RightRadius_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IEquidistant_get_RightRadius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IEquidistant_get_Style_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IEquidistant_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IEquidistant_put_Style_Proxy( 
    IEquidistant __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IEquidistant_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEquidistant_INTERFACE_DEFINED__ */


#ifndef __INurbs_INTERFACE_DEFINED__
#define __INurbs_INTERFACE_DEFINED__

/* interface INurbs */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_INurbs,0xEE1AB9F4,0xB127,0x4303,0xA3,0x0D,0xC3,0x50,0x9F,0x6D,0x10,0xCD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EE1AB9F4-B127-4303-A30D-C3509F6D10CD")
    INurbs : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Closed( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Closed( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Degree( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Degree( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Periodic( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PointsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetNurbsParams( 
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weight,
            /* [in] */ VARIANT Knots,
            /* [in] */ long Degree,
            /* [in] */ VARIANT_BOOL Closed,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetNurbsParams( 
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weight,
            /* [out] */ VARIANT __RPC_FAR *Knots,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddPoint( 
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Weight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPoint( 
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Weight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeletePoint( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INurbsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            INurbs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            INurbs __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            INurbs __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            INurbs __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            INurbs __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            INurbs __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            INurbs __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            INurbs __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            INurbs __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Closed )( 
            INurbs __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Closed )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Degree )( 
            INurbs __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Degree )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Periodic )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PointsCount )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetNurbsParams )( 
            INurbs __RPC_FAR * This,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Weight,
            /* [in] */ VARIANT Knots,
            /* [in] */ long Degree,
            /* [in] */ VARIANT_BOOL Closed,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNurbsParams )( 
            INurbs __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *Points,
            /* [out] */ VARIANT __RPC_FAR *Weight,
            /* [out] */ VARIANT __RPC_FAR *Knots,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddPoint )( 
            INurbs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Weight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPoint )( 
            INurbs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Weight,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeletePoint )( 
            INurbs __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            INurbs __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            INurbs __RPC_FAR * This,
            /* [in] */ long Value);
        
        END_INTERFACE
    } INurbsVtbl;

    interface INurbs
    {
        CONST_VTBL struct INurbsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define INurbs_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define INurbs_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define INurbs_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define INurbs_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define INurbs_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define INurbs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define INurbs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define INurbs_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define INurbs_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define INurbs_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define INurbs_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define INurbs_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define INurbs_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define INurbs_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define INurbs_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define INurbs_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define INurbs_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define INurbs_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define INurbs_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define INurbs_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define INurbs_put_Closed(This,Val)	\
    (This)->lpVtbl -> put_Closed(This,Val)

#define INurbs_get_Closed(This,Result)	\
    (This)->lpVtbl -> get_Closed(This,Result)

#define INurbs_put_Degree(This,Val)	\
    (This)->lpVtbl -> put_Degree(This,Val)

#define INurbs_get_Degree(This,Result)	\
    (This)->lpVtbl -> get_Degree(This,Result)

#define INurbs_get_Periodic(This,Result)	\
    (This)->lpVtbl -> get_Periodic(This,Result)

#define INurbs_get_PointsCount(This,Result)	\
    (This)->lpVtbl -> get_PointsCount(This,Result)

#define INurbs_SetNurbsParams(This,Points,Weight,Knots,Degree,Closed,Result)	\
    (This)->lpVtbl -> SetNurbsParams(This,Points,Weight,Knots,Degree,Closed,Result)

#define INurbs_GetNurbsParams(This,Points,Weight,Knots,Result)	\
    (This)->lpVtbl -> GetNurbsParams(This,Points,Weight,Knots,Result)

#define INurbs_AddPoint(This,Index,X,Y,Weight,PVal)	\
    (This)->lpVtbl -> AddPoint(This,Index,X,Y,Weight,PVal)

#define INurbs_GetPoint(This,Index,X,Y,Weight,PVal)	\
    (This)->lpVtbl -> GetPoint(This,Index,X,Y,Weight,PVal)

#define INurbs_DeletePoint(This,Index,Result)	\
    (This)->lpVtbl -> DeletePoint(This,Index,Result)

#define INurbs_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#define INurbs_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define INurbs_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE INurbs_put_Closed_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB INurbs_put_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbs_get_Closed_Proxy( 
    INurbs __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbs_get_Closed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE INurbs_put_Degree_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB INurbs_put_Degree_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbs_get_Degree_Proxy( 
    INurbs __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB INurbs_get_Degree_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbs_get_Periodic_Proxy( 
    INurbs __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbs_get_Periodic_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbs_get_PointsCount_Proxy( 
    INurbs __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB INurbs_get_PointsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbs_SetNurbsParams_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Weight,
    /* [in] */ VARIANT Knots,
    /* [in] */ long Degree,
    /* [in] */ VARIANT_BOOL Closed,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbs_SetNurbsParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbs_GetNurbsParams_Proxy( 
    INurbs __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *Points,
    /* [out] */ VARIANT __RPC_FAR *Weight,
    /* [out] */ VARIANT __RPC_FAR *Knots,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbs_GetNurbsParams_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbs_AddPoint_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Weight,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB INurbs_AddPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbs_GetPoint_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Weight,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB INurbs_GetPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbs_DeletePoint_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbs_DeletePoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbs_Clear_Proxy( 
    INurbs __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB INurbs_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbs_get_Style_Proxy( 
    INurbs __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB INurbs_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE INurbs_put_Style_Proxy( 
    INurbs __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB INurbs_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __INurbs_INTERFACE_DEFINED__ */


#ifndef __INurbses_INTERFACE_DEFINED__
#define __INurbses_INTERFACE_DEFINED__

/* interface INurbses */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_INurbses,0x88ECED7C,0x181C,0x4d9f,0x84,0xDE,0x44,0xB2,0xE3,0x60,0xF2,0x78);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("88ECED7C-181C-4d9f-84DE-44B2E360F278")
    INurbses : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Nurbs( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Convert( 
            /* [in] */ IDrawingObject __RPC_FAR *Curve,
            /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INurbsesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            INurbses __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            INurbses __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            INurbses __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            INurbses __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            INurbses __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            INurbses __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            INurbses __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            INurbses __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Nurbs )( 
            INurbses __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            INurbses __RPC_FAR * This,
            /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Convert )( 
            INurbses __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Curve,
            /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } INurbsesVtbl;

    interface INurbses
    {
        CONST_VTBL struct INurbsesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define INurbses_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define INurbses_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define INurbses_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define INurbses_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define INurbses_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define INurbses_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define INurbses_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define INurbses_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define INurbses_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define INurbses_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define INurbses_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define INurbses_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define INurbses_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define INurbses_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define INurbses_get_Nurbs(This,Index,Result)	\
    (This)->lpVtbl -> get_Nurbs(This,Index,Result)

#define INurbses_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#define INurbses_Convert(This,Curve,Result)	\
    (This)->lpVtbl -> Convert(This,Curve,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE INurbses_get_Nurbs_Proxy( 
    INurbses __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB INurbses_get_Nurbs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbses_Add_Proxy( 
    INurbses __RPC_FAR * This,
    /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB INurbses_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE INurbses_Convert_Proxy( 
    INurbses __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Curve,
    /* [retval][out] */ INurbs __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB INurbses_Convert_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __INurbses_INTERFACE_DEFINED__ */


#ifndef __ICentreMarkers_INTERFACE_DEFINED__
#define __ICentreMarkers_INTERFACE_DEFINED__

/* interface ICentreMarkers */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICentreMarkers,0xA0533211,0xCF52,0x4ab5,0xA1,0x72,0x3D,0xC7,0xD9,0x42,0x76,0xD1);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A0533211-CF52-4ab5-A172-3DC7D94276D1")
    ICentreMarkers : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CentreMarker( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICentreMarker __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ ICentreMarker __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICentreMarkersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICentreMarkers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICentreMarkers __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICentreMarkers __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICentreMarkers __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICentreMarkers __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICentreMarkers __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICentreMarkers __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ICentreMarkers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CentreMarker )( 
            ICentreMarkers __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ ICentreMarker __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ICentreMarkers __RPC_FAR * This,
            /* [retval][out] */ ICentreMarker __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } ICentreMarkersVtbl;

    interface ICentreMarkers
    {
        CONST_VTBL struct ICentreMarkersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICentreMarkers_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICentreMarkers_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICentreMarkers_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICentreMarkers_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICentreMarkers_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICentreMarkers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICentreMarkers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICentreMarkers_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICentreMarkers_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICentreMarkers_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICentreMarkers_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICentreMarkers_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define ICentreMarkers_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define ICentreMarkers_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define ICentreMarkers_get_CentreMarker(This,Index,Result)	\
    (This)->lpVtbl -> get_CentreMarker(This,Index,Result)

#define ICentreMarkers_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarkers_get_CentreMarker_Proxy( 
    ICentreMarkers __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ ICentreMarker __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICentreMarkers_get_CentreMarker_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ICentreMarkers_Add_Proxy( 
    ICentreMarkers __RPC_FAR * This,
    /* [retval][out] */ ICentreMarker __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICentreMarkers_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICentreMarkers_INTERFACE_DEFINED__ */


#ifndef __ICentreMarker_INTERFACE_DEFINED__
#define __ICentreMarker_INTERFACE_DEFINED__

/* interface ICentreMarker */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICentreMarker,0x8FE1CADA,0xDE72,0x4a55,0xB3,0x03,0xEA,0xF1,0xF4,0x74,0x8C,0xF6);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8FE1CADA-DE72-4a55-B303-EAF1F4748CF6")
    ICentreMarker : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseObject( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignType( 
            /* [in] */ /* external definition not present */ ksCentreMarkerEnum NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignType( 
            /* [retval][out] */ /* external definition not present */ ksCentreMarkerEnum __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SemiAxisAutoLength( 
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SemiAxisAutoLength( 
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SemiAxisLength( 
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SemiAxisLength( 
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CrosshairSize( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CrosshairSize( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CrosshairSizeModify( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CrosshairSizeModify( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICentreMarkerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICentreMarker __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICentreMarker __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICentreMarker __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseObject )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseObject )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignType )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksCentreMarkerEnum NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignType )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksCentreMarkerEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SemiAxisAutoLength )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SemiAxisAutoLength )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SemiAxisLength )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SemiAxisLength )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CrosshairSize )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CrosshairSize )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CrosshairSizeModify )( 
            ICentreMarker __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CrosshairSizeModify )( 
            ICentreMarker __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICentreMarkerVtbl;

    interface ICentreMarker
    {
        CONST_VTBL struct ICentreMarkerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICentreMarker_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICentreMarker_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICentreMarker_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICentreMarker_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICentreMarker_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICentreMarker_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICentreMarker_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICentreMarker_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICentreMarker_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICentreMarker_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICentreMarker_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICentreMarker_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define ICentreMarker_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define ICentreMarker_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define ICentreMarker_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define ICentreMarker_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define ICentreMarker_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ICentreMarker_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ICentreMarker_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define ICentreMarker_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define ICentreMarker_get_BaseObject(This,Result)	\
    (This)->lpVtbl -> get_BaseObject(This,Result)

#define ICentreMarker_put_BaseObject(This,Value)	\
    (This)->lpVtbl -> put_BaseObject(This,Value)

#define ICentreMarker_put_X(This,NewVal)	\
    (This)->lpVtbl -> put_X(This,NewVal)

#define ICentreMarker_get_X(This,PVal)	\
    (This)->lpVtbl -> get_X(This,PVal)

#define ICentreMarker_put_Y(This,NewVal)	\
    (This)->lpVtbl -> put_Y(This,NewVal)

#define ICentreMarker_get_Y(This,PVal)	\
    (This)->lpVtbl -> get_Y(This,PVal)

#define ICentreMarker_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define ICentreMarker_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ICentreMarker_put_SignType(This,NewVal)	\
    (This)->lpVtbl -> put_SignType(This,NewVal)

#define ICentreMarker_get_SignType(This,PVal)	\
    (This)->lpVtbl -> get_SignType(This,PVal)

#define ICentreMarker_put_SemiAxisAutoLength(This,AxisType,NewVal)	\
    (This)->lpVtbl -> put_SemiAxisAutoLength(This,AxisType,NewVal)

#define ICentreMarker_get_SemiAxisAutoLength(This,AxisType,PVal)	\
    (This)->lpVtbl -> get_SemiAxisAutoLength(This,AxisType,PVal)

#define ICentreMarker_put_SemiAxisLength(This,AxisType,NewVal)	\
    (This)->lpVtbl -> put_SemiAxisLength(This,AxisType,NewVal)

#define ICentreMarker_get_SemiAxisLength(This,AxisType,PVal)	\
    (This)->lpVtbl -> get_SemiAxisLength(This,AxisType,PVal)

#define ICentreMarker_put_CrosshairSize(This,NewVal)	\
    (This)->lpVtbl -> put_CrosshairSize(This,NewVal)

#define ICentreMarker_get_CrosshairSize(This,PVal)	\
    (This)->lpVtbl -> get_CrosshairSize(This,PVal)

#define ICentreMarker_put_CrosshairSizeModify(This,NewVal)	\
    (This)->lpVtbl -> put_CrosshairSizeModify(This,NewVal)

#define ICentreMarker_get_CrosshairSizeModify(This,PVal)	\
    (This)->lpVtbl -> get_CrosshairSizeModify(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_BaseObject_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB ICentreMarker_get_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_BaseObject_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Value);


void __RPC_STUB ICentreMarker_put_BaseObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_X_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICentreMarker_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_X_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_Y_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICentreMarker_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_Y_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_Angle_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICentreMarker_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_Angle_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_SignType_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksCentreMarkerEnum NewVal);


void __RPC_STUB ICentreMarker_put_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_SignType_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksCentreMarkerEnum __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_SemiAxisAutoLength_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ICentreMarker_put_SemiAxisAutoLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_SemiAxisAutoLength_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_SemiAxisAutoLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_SemiAxisLength_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
    /* [in] */ double NewVal);


void __RPC_STUB ICentreMarker_put_SemiAxisLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_SemiAxisLength_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksSemiAxisTypeEnum AxisType,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_SemiAxisLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_CrosshairSize_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB ICentreMarker_put_CrosshairSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_CrosshairSize_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_CrosshairSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICentreMarker_put_CrosshairSizeModify_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB ICentreMarker_put_CrosshairSizeModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICentreMarker_get_CrosshairSizeModify_Proxy( 
    ICentreMarker __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICentreMarker_get_CrosshairSizeModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICentreMarker_INTERFACE_DEFINED__ */


#ifndef __IAxisLineParam_INTERFACE_DEFINED__
#define __IAxisLineParam_INTERFACE_DEFINED__

/* interface IAxisLineParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAxisLineParam,0x620CC8EB,0xA5C0,0x4978,0xBD,0x98,0x38,0x34,0x4D,0xC6,0xAD,0xC0);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("620CC8EB-A5C0-4978-BD98-38344DC6ADC0")
    IAxisLineParam : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_JutLength( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_JutLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DottedLength( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DottedLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Interval( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Interval( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoDetectedDash( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoDetectedDash( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DashMaxLength( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DashMaxLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_JutLengthModify( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_JutLengthModify( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DottedLengthModify( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DottedLengthModify( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_IntervalModify( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IntervalModify( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoDetectedDashModify( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoDetectedDashModify( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DashMaxLengthModify( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DashMaxLengthModify( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAxisLineParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAxisLineParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAxisLineParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAxisLineParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_JutLength )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_JutLength )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DottedLength )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DottedLength )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Interval )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Interval )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoDetectedDash )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoDetectedDash )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DashMaxLength )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DashMaxLength )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_JutLengthModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_JutLengthModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DottedLengthModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DottedLengthModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IntervalModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IntervalModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoDetectedDashModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoDetectedDashModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DashMaxLengthModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DashMaxLengthModify )( 
            IAxisLineParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IAxisLineParamVtbl;

    interface IAxisLineParam
    {
        CONST_VTBL struct IAxisLineParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAxisLineParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAxisLineParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAxisLineParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAxisLineParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAxisLineParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAxisLineParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAxisLineParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAxisLineParam_put_JutLength(This,NewVal)	\
    (This)->lpVtbl -> put_JutLength(This,NewVal)

#define IAxisLineParam_get_JutLength(This,PVal)	\
    (This)->lpVtbl -> get_JutLength(This,PVal)

#define IAxisLineParam_put_DottedLength(This,NewVal)	\
    (This)->lpVtbl -> put_DottedLength(This,NewVal)

#define IAxisLineParam_get_DottedLength(This,PVal)	\
    (This)->lpVtbl -> get_DottedLength(This,PVal)

#define IAxisLineParam_put_Interval(This,NewVal)	\
    (This)->lpVtbl -> put_Interval(This,NewVal)

#define IAxisLineParam_get_Interval(This,PVal)	\
    (This)->lpVtbl -> get_Interval(This,PVal)

#define IAxisLineParam_put_AutoDetectedDash(This,NewVal)	\
    (This)->lpVtbl -> put_AutoDetectedDash(This,NewVal)

#define IAxisLineParam_get_AutoDetectedDash(This,PVal)	\
    (This)->lpVtbl -> get_AutoDetectedDash(This,PVal)

#define IAxisLineParam_put_DashMaxLength(This,NewVal)	\
    (This)->lpVtbl -> put_DashMaxLength(This,NewVal)

#define IAxisLineParam_get_DashMaxLength(This,PVal)	\
    (This)->lpVtbl -> get_DashMaxLength(This,PVal)

#define IAxisLineParam_put_JutLengthModify(This,NewVal)	\
    (This)->lpVtbl -> put_JutLengthModify(This,NewVal)

#define IAxisLineParam_get_JutLengthModify(This,PVal)	\
    (This)->lpVtbl -> get_JutLengthModify(This,PVal)

#define IAxisLineParam_put_DottedLengthModify(This,NewVal)	\
    (This)->lpVtbl -> put_DottedLengthModify(This,NewVal)

#define IAxisLineParam_get_DottedLengthModify(This,PVal)	\
    (This)->lpVtbl -> get_DottedLengthModify(This,PVal)

#define IAxisLineParam_put_IntervalModify(This,NewVal)	\
    (This)->lpVtbl -> put_IntervalModify(This,NewVal)

#define IAxisLineParam_get_IntervalModify(This,PVal)	\
    (This)->lpVtbl -> get_IntervalModify(This,PVal)

#define IAxisLineParam_put_AutoDetectedDashModify(This,NewVal)	\
    (This)->lpVtbl -> put_AutoDetectedDashModify(This,NewVal)

#define IAxisLineParam_get_AutoDetectedDashModify(This,PVal)	\
    (This)->lpVtbl -> get_AutoDetectedDashModify(This,PVal)

#define IAxisLineParam_put_DashMaxLengthModify(This,NewVal)	\
    (This)->lpVtbl -> put_DashMaxLengthModify(This,NewVal)

#define IAxisLineParam_get_DashMaxLengthModify(This,PVal)	\
    (This)->lpVtbl -> get_DashMaxLengthModify(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_JutLength_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLineParam_put_JutLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_JutLength_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_JutLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_DottedLength_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLineParam_put_DottedLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_DottedLength_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_DottedLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_Interval_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLineParam_put_Interval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_Interval_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_Interval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_AutoDetectedDash_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisLineParam_put_AutoDetectedDash_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_AutoDetectedDash_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_AutoDetectedDash_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_DashMaxLength_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLineParam_put_DashMaxLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_DashMaxLength_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_DashMaxLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_JutLengthModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisLineParam_put_JutLengthModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_JutLengthModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_JutLengthModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_DottedLengthModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisLineParam_put_DottedLengthModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_DottedLengthModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_DottedLengthModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_IntervalModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisLineParam_put_IntervalModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_IntervalModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_IntervalModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_AutoDetectedDashModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisLineParam_put_AutoDetectedDashModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_AutoDetectedDashModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_AutoDetectedDashModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_put_DashMaxLengthModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IAxisLineParam_put_DashMaxLengthModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLineParam_get_DashMaxLengthModify_Proxy( 
    IAxisLineParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IAxisLineParam_get_DashMaxLengthModify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAxisLineParam_INTERFACE_DEFINED__ */


#ifndef __IRemoteElement_INTERFACE_DEFINED__
#define __IRemoteElement_INTERFACE_DEFINED__

/* interface IRemoteElement */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRemoteElement,0xA9D96CE2,0x9FE4,0x494e,0x87,0xB2,0x20,0x12,0x2E,0xAC,0x2A,0xE4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A9D96CE2-9FE4-494e-87B2-20122EAC2AE4")
    IRemoteElement : public IUnitMarking
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSorted( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSorted( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSheet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSheet( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoZone( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoZone( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalText( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRemoteElementVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRemoteElement __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRemoteElement __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRemoteElement __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfDirection )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksShelfDirectionEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfDirection )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksShelfDirectionEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfX )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfX )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ShelfY )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ShelfY )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Form )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksContourFormEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Form )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksContourFormEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextUp )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TextDown )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FilletRadius )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FilletRadius )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ double Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSorted )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSorted )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoSheet )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoSheet )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoZone )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoZone )( 
            IRemoteElement __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AdditionalText )( 
            IRemoteElement __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IRemoteElementVtbl;

    interface IRemoteElement
    {
        CONST_VTBL struct IRemoteElementVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRemoteElement_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRemoteElement_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRemoteElement_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRemoteElement_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRemoteElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRemoteElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRemoteElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRemoteElement_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRemoteElement_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRemoteElement_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRemoteElement_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRemoteElement_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IRemoteElement_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IRemoteElement_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IRemoteElement_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IRemoteElement_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IRemoteElement_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IRemoteElement_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IRemoteElement_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IRemoteElement_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IRemoteElement_get_Xc(This,Result)	\
    (This)->lpVtbl -> get_Xc(This,Result)

#define IRemoteElement_put_Xc(This,Result)	\
    (This)->lpVtbl -> put_Xc(This,Result)

#define IRemoteElement_get_Yc(This,Result)	\
    (This)->lpVtbl -> get_Yc(This,Result)

#define IRemoteElement_put_Yc(This,Result)	\
    (This)->lpVtbl -> put_Yc(This,Result)

#define IRemoteElement_get_Radius(This,Result)	\
    (This)->lpVtbl -> get_Radius(This,Result)

#define IRemoteElement_put_Radius(This,Result)	\
    (This)->lpVtbl -> put_Radius(This,Result)

#define IRemoteElement_get_Height(This,Result)	\
    (This)->lpVtbl -> get_Height(This,Result)

#define IRemoteElement_put_Height(This,Result)	\
    (This)->lpVtbl -> put_Height(This,Result)

#define IRemoteElement_get_Width(This,Result)	\
    (This)->lpVtbl -> get_Width(This,Result)

#define IRemoteElement_put_Width(This,Result)	\
    (This)->lpVtbl -> put_Width(This,Result)

#define IRemoteElement_get_ShelfDirection(This,Result)	\
    (This)->lpVtbl -> get_ShelfDirection(This,Result)

#define IRemoteElement_put_ShelfDirection(This,Value)	\
    (This)->lpVtbl -> put_ShelfDirection(This,Value)

#define IRemoteElement_get_ShelfX(This,Result)	\
    (This)->lpVtbl -> get_ShelfX(This,Result)

#define IRemoteElement_put_ShelfX(This,Result)	\
    (This)->lpVtbl -> put_ShelfX(This,Result)

#define IRemoteElement_get_ShelfY(This,Result)	\
    (This)->lpVtbl -> get_ShelfY(This,Result)

#define IRemoteElement_put_ShelfY(This,Result)	\
    (This)->lpVtbl -> put_ShelfY(This,Result)

#define IRemoteElement_get_Form(This,Result)	\
    (This)->lpVtbl -> get_Form(This,Result)

#define IRemoteElement_put_Form(This,Value)	\
    (This)->lpVtbl -> put_Form(This,Value)

#define IRemoteElement_get_TextUp(This,PVal)	\
    (This)->lpVtbl -> get_TextUp(This,PVal)

#define IRemoteElement_get_TextDown(This,PVal)	\
    (This)->lpVtbl -> get_TextDown(This,PVal)

#define IRemoteElement_get_FilletRadius(This,Result)	\
    (This)->lpVtbl -> get_FilletRadius(This,Result)

#define IRemoteElement_put_FilletRadius(This,Result)	\
    (This)->lpVtbl -> put_FilletRadius(This,Result)


#define IRemoteElement_get_AutoSorted(This,Result)	\
    (This)->lpVtbl -> get_AutoSorted(This,Result)

#define IRemoteElement_put_AutoSorted(This,Value)	\
    (This)->lpVtbl -> put_AutoSorted(This,Value)

#define IRemoteElement_get_AutoSheet(This,Result)	\
    (This)->lpVtbl -> get_AutoSheet(This,Result)

#define IRemoteElement_put_AutoSheet(This,Value)	\
    (This)->lpVtbl -> put_AutoSheet(This,Value)

#define IRemoteElement_get_AutoZone(This,Result)	\
    (This)->lpVtbl -> get_AutoZone(This,Result)

#define IRemoteElement_put_AutoZone(This,Value)	\
    (This)->lpVtbl -> put_AutoZone(This,Value)

#define IRemoteElement_get_AdditionalText(This,PVal)	\
    (This)->lpVtbl -> get_AdditionalText(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRemoteElement_get_AutoSorted_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRemoteElement_get_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRemoteElement_put_AutoSorted_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRemoteElement_put_AutoSorted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRemoteElement_get_AutoSheet_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRemoteElement_get_AutoSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRemoteElement_put_AutoSheet_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRemoteElement_put_AutoSheet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRemoteElement_get_AutoZone_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRemoteElement_get_AutoZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRemoteElement_put_AutoZone_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IRemoteElement_put_AutoZone_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRemoteElement_get_AdditionalText_Proxy( 
    IRemoteElement __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IRemoteElement_get_AdditionalText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRemoteElement_INTERFACE_DEFINED__ */


#ifndef __IRemoteElements_INTERFACE_DEFINED__
#define __IRemoteElements_INTERFACE_DEFINED__

/* interface IRemoteElements */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRemoteElements,0x88427A6B,0x00AF,0x46e2,0x9B,0x95,0xBC,0x83,0x48,0xC2,0x16,0x2A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("88427A6B-00AF-46e2-9B95-BC8348C2162A")
    IRemoteElements : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemoteElement( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRemoteElement __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRemoteElement __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRemoteElementsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRemoteElements __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRemoteElements __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRemoteElements __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRemoteElements __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRemoteElements __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRemoteElements __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRemoteElements __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRemoteElements __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RemoteElement )( 
            IRemoteElements __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRemoteElement __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRemoteElements __RPC_FAR * This,
            /* [retval][out] */ IRemoteElement __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IRemoteElementsVtbl;

    interface IRemoteElements
    {
        CONST_VTBL struct IRemoteElementsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRemoteElements_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRemoteElements_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRemoteElements_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRemoteElements_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRemoteElements_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRemoteElements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRemoteElements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRemoteElements_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRemoteElements_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRemoteElements_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRemoteElements_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRemoteElements_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRemoteElements_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRemoteElements_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRemoteElements_get_RemoteElement(This,Index,Result)	\
    (This)->lpVtbl -> get_RemoteElement(This,Index,Result)

#define IRemoteElements_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRemoteElements_get_RemoteElement_Proxy( 
    IRemoteElements __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRemoteElement __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRemoteElements_get_RemoteElement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRemoteElements_Add_Proxy( 
    IRemoteElements __RPC_FAR * This,
    /* [retval][out] */ IRemoteElement __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRemoteElements_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRemoteElements_INTERFACE_DEFINED__ */


#ifndef __IAxisLine_INTERFACE_DEFINED__
#define __IAxisLine_INTERFACE_DEFINED__

/* interface IAxisLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAxisLine,0x5C5CAEBD,0x70A9,0x41db,0x9F,0x74,0xF9,0x76,0x0D,0x82,0x2D,0x95);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5C5CAEBD-70A9-41db-9F74-F9760D822D95")
    IAxisLine : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAxisLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAxisLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAxisLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAxisLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IAxisLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IAxisLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        END_INTERFACE
    } IAxisLineVtbl;

    interface IAxisLine
    {
        CONST_VTBL struct IAxisLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAxisLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAxisLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAxisLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAxisLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAxisLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAxisLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAxisLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAxisLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAxisLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAxisLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAxisLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAxisLine_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IAxisLine_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IAxisLine_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IAxisLine_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IAxisLine_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IAxisLine_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IAxisLine_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IAxisLine_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IAxisLine_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IAxisLine_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IAxisLine_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IAxisLine_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IAxisLine_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IAxisLine_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IAxisLine_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IAxisLine_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IAxisLine_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IAxisLine_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IAxisLine_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IAxisLine_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IAxisLine_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLine_put_X1_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLine_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLine_get_X1_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLine_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLine_put_Y1_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLine_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLine_get_Y1_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLine_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLine_put_X2_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLine_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLine_get_X2_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLine_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLine_put_Y2_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLine_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLine_get_Y2_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLine_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLine_put_Angle_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLine_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLine_get_Angle_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLine_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAxisLine_put_Length_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IAxisLine_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLine_get_Length_Proxy( 
    IAxisLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IAxisLine_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAxisLine_INTERFACE_DEFINED__ */


#ifndef __IAxisLines_INTERFACE_DEFINED__
#define __IAxisLines_INTERFACE_DEFINED__

/* interface IAxisLines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAxisLines,0xC567E700,0xE163,0x4c8f,0xB3,0x29,0x93,0x1B,0xB9,0x3D,0x02,0x23);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C567E700-E163-4c8f-B329-931BB93D0223")
    IAxisLines : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AxisLine( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAxisLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IAxisLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAxisLinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAxisLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAxisLines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAxisLines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAxisLines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAxisLines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAxisLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAxisLines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAxisLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AxisLine )( 
            IAxisLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAxisLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IAxisLines __RPC_FAR * This,
            /* [retval][out] */ IAxisLine __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAxisLinesVtbl;

    interface IAxisLines
    {
        CONST_VTBL struct IAxisLinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAxisLines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAxisLines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAxisLines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAxisLines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAxisLines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAxisLines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAxisLines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAxisLines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IAxisLines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IAxisLines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IAxisLines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IAxisLines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IAxisLines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IAxisLines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IAxisLines_get_AxisLine(This,Index,Result)	\
    (This)->lpVtbl -> get_AxisLine(This,Index,Result)

#define IAxisLines_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAxisLines_get_AxisLine_Proxy( 
    IAxisLines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAxisLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAxisLines_get_AxisLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAxisLines_Add_Proxy( 
    IAxisLines __RPC_FAR * This,
    /* [retval][out] */ IAxisLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAxisLines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAxisLines_INTERFACE_DEFINED__ */


#ifndef __IHatchParam_INTERFACE_DEFINED__
#define __IHatchParam_INTERFACE_DEFINED__

/* interface IHatchParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IHatchParam,0x437D6587,0x7649,0x4a0c,0x80,0xBB,0x7A,0x6E,0x89,0x66,0x18,0x39);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("437D6587-7649-4a0c-80BB-7A6E89661839")
    IHatchParam : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HatchType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HatchType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsSheetAngle( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_IsSheetAngle( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHatchParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IHatchParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IHatchParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IHatchParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HatchType )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HatchType )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsSheetAngle )( 
            IHatchParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_IsSheetAngle )( 
            IHatchParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IHatchParamVtbl;

    interface IHatchParam
    {
        CONST_VTBL struct IHatchParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHatchParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHatchParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHatchParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHatchParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHatchParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHatchParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHatchParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHatchParam_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IHatchParam_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IHatchParam_get_Color(This,Result)	\
    (This)->lpVtbl -> get_Color(This,Result)

#define IHatchParam_put_Color(This,Value)	\
    (This)->lpVtbl -> put_Color(This,Value)

#define IHatchParam_get_Step(This,Result)	\
    (This)->lpVtbl -> get_Step(This,Result)

#define IHatchParam_put_Step(This,Value)	\
    (This)->lpVtbl -> put_Step(This,Value)

#define IHatchParam_get_Angle(This,Result)	\
    (This)->lpVtbl -> get_Angle(This,Result)

#define IHatchParam_put_Angle(This,Value)	\
    (This)->lpVtbl -> put_Angle(This,Value)

#define IHatchParam_get_HatchType(This,Result)	\
    (This)->lpVtbl -> get_HatchType(This,Result)

#define IHatchParam_put_HatchType(This,Value)	\
    (This)->lpVtbl -> put_HatchType(This,Value)

#define IHatchParam_get_Width(This,Result)	\
    (This)->lpVtbl -> get_Width(This,Result)

#define IHatchParam_put_Width(This,Value)	\
    (This)->lpVtbl -> put_Width(This,Value)

#define IHatchParam_get_IsSheetAngle(This,Result)	\
    (This)->lpVtbl -> get_IsSheetAngle(This,Result)

#define IHatchParam_put_IsSheetAngle(This,Value)	\
    (This)->lpVtbl -> put_IsSheetAngle(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_Style_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_Style_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IHatchParam_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_Color_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_Color_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IHatchParam_put_Color_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_Step_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_Step_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHatchParam_put_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_Angle_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_Angle_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHatchParam_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_HatchType_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_HatchType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_HatchType_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IHatchParam_put_HatchType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_Width_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_Width_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHatchParam_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatchParam_get_IsSheetAngle_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IHatchParam_get_IsSheetAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatchParam_put_IsSheetAngle_Proxy( 
    IHatchParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IHatchParam_put_IsSheetAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHatchParam_INTERFACE_DEFINED__ */


#ifndef __IDrawingGroup_INTERFACE_DEFINED__
#define __IDrawingGroup_INTERFACE_DEFINED__

/* interface IDrawingGroup */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingGroup,0x2C96ACB2,0x4877,0x45d9,0xB6,0x2D,0x78,0xBB,0xAD,0x70,0x44,0x58);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2C96ACB2-4877-45d9-B62D-78BBAD704458")
    IDrawingGroup : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [defaultvalue][in] */ BSTR Val = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Objects( 
            /* [in] */ VARIANT Type,
            /* [retval][out] */ VARIANT __RPC_FAR *Objects) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddObjects( 
            /* [in] */ VARIANT objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DetachObjects( 
            /* [in] */ VARIANT Objects,
            /* [in] */ VARIANT_BOOL DeleteTmp,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [in] */ VARIANT_BOOL DeleteTmp,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Store( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ExistObject( 
            /* [in] */ IDrawingObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddRegion( 
            /* [in] */ /* external definition not present */ ksRegionTypeEnum RegionType,
            /* [in] */ double XMin,
            /* [in] */ double YMin,
            /* [in] */ double XMax,
            /* [in] */ double YMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ReadFragment( 
            /* [in] */ BSTR FileName,
            /* [in] */ VARIANT_BOOL CurentLayer,
            /* [in] */ double XBase,
            /* [in] */ double YBase,
            /* [in] */ double Scale,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL ScaleProjLinesSize,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteFragment( 
            /* [in] */ BSTR FileName,
            BSTR Comment,
            /* [in] */ double XBase,
            /* [in] */ double YBase,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE WriteToClip( 
            /* [in] */ VARIANT_BOOL AttrCopy,
            /* [in] */ VARIANT_BOOL SpcObjCopy,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ReadFromClip( 
            /* [in] */ VARIANT_BOOL AttrCopy,
            /* [in] */ VARIANT_BOOL SpcObjCopy,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Draw( 
            /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Open( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Close( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingGroupVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingGroup __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingGroup __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingGroup __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IDrawingGroup __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Objects )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ VARIANT Type,
            /* [retval][out] */ VARIANT __RPC_FAR *Objects);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddObjects )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ VARIANT objects,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DetachObjects )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            /* [in] */ VARIANT_BOOL DeleteTmp,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL DeleteTmp,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Store )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectsCount )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ExistObject )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Object,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddRegion )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksRegionTypeEnum RegionType,
            /* [in] */ double XMin,
            /* [in] */ double YMin,
            /* [in] */ double XMax,
            /* [in] */ double YMax,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReadFragment )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            /* [in] */ VARIANT_BOOL CurentLayer,
            /* [in] */ double XBase,
            /* [in] */ double YBase,
            /* [in] */ double Scale,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL ScaleProjLinesSize,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *WriteFragment )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ BSTR FileName,
            BSTR Comment,
            /* [in] */ double XBase,
            /* [in] */ double YBase,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *WriteToClip )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL AttrCopy,
            /* [in] */ VARIANT_BOOL SpcObjCopy,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ReadFromClip )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL AttrCopy,
            /* [in] */ VARIANT_BOOL SpcObjCopy,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Draw )( 
            IDrawingGroup __RPC_FAR * This,
            /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Current )( 
            IDrawingGroup __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IDrawingGroupVtbl;

    interface IDrawingGroup
    {
        CONST_VTBL struct IDrawingGroupVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingGroup_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingGroup_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingGroup_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingGroup_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingGroup_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingGroup_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingGroup_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingGroup_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingGroup_put_Name(This,Val)	\
    (This)->lpVtbl -> put_Name(This,Val)

#define IDrawingGroup_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IDrawingGroup_get_Objects(This,Type,Objects)	\
    (This)->lpVtbl -> get_Objects(This,Type,Objects)

#define IDrawingGroup_AddObjects(This,objects,Result)	\
    (This)->lpVtbl -> AddObjects(This,objects,Result)

#define IDrawingGroup_DetachObjects(This,Objects,DeleteTmp,Result)	\
    (This)->lpVtbl -> DetachObjects(This,Objects,DeleteTmp,Result)

#define IDrawingGroup_Clear(This,DeleteTmp,Result)	\
    (This)->lpVtbl -> Clear(This,DeleteTmp,Result)

#define IDrawingGroup_Store(This,Result)	\
    (This)->lpVtbl -> Store(This,Result)

#define IDrawingGroup_get_ObjectsCount(This,Result)	\
    (This)->lpVtbl -> get_ObjectsCount(This,Result)

#define IDrawingGroup_ExistObject(This,Object,Result)	\
    (This)->lpVtbl -> ExistObject(This,Object,Result)

#define IDrawingGroup_Delete(This,Result)	\
    (This)->lpVtbl -> Delete(This,Result)

#define IDrawingGroup_AddRegion(This,RegionType,XMin,YMin,XMax,YMax,Result)	\
    (This)->lpVtbl -> AddRegion(This,RegionType,XMin,YMin,XMax,YMax,Result)

#define IDrawingGroup_ReadFragment(This,FileName,CurentLayer,XBase,YBase,Scale,Angle,ScaleProjLinesSize,Result)	\
    (This)->lpVtbl -> ReadFragment(This,FileName,CurentLayer,XBase,YBase,Scale,Angle,ScaleProjLinesSize,Result)

#define IDrawingGroup_WriteFragment(This,FileName,Comment,XBase,YBase,Result)	\
    (This)->lpVtbl -> WriteFragment(This,FileName,Comment,XBase,YBase,Result)

#define IDrawingGroup_WriteToClip(This,AttrCopy,SpcObjCopy,Result)	\
    (This)->lpVtbl -> WriteToClip(This,AttrCopy,SpcObjCopy,Result)

#define IDrawingGroup_ReadFromClip(This,AttrCopy,SpcObjCopy,Result)	\
    (This)->lpVtbl -> ReadFromClip(This,AttrCopy,SpcObjCopy,Result)

#define IDrawingGroup_Draw(This,HWnd,Result)	\
    (This)->lpVtbl -> Draw(This,HWnd,Result)

#define IDrawingGroup_Open(This,Result)	\
    (This)->lpVtbl -> Open(This,Result)

#define IDrawingGroup_Close(This,Result)	\
    (This)->lpVtbl -> Close(This,Result)

#define IDrawingGroup_get_Current(This,Result)	\
    (This)->lpVtbl -> get_Current(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_put_Name_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR Val);


void __RPC_STUB IDrawingGroup_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_get_Name_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IDrawingGroup_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_get_Objects_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ VARIANT Type,
    /* [retval][out] */ VARIANT __RPC_FAR *Objects);


void __RPC_STUB IDrawingGroup_get_Objects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_AddObjects_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ VARIANT objects,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_AddObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_DetachObjects_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    /* [in] */ VARIANT_BOOL DeleteTmp,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_DetachObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_Clear_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL DeleteTmp,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_Store_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_Store_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_get_ObjectsCount_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_get_ObjectsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_ExistObject_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Object,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_ExistObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_Delete_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_AddRegion_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksRegionTypeEnum RegionType,
    /* [in] */ double XMin,
    /* [in] */ double YMin,
    /* [in] */ double XMax,
    /* [in] */ double YMax,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_AddRegion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_ReadFragment_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    /* [in] */ VARIANT_BOOL CurentLayer,
    /* [in] */ double XBase,
    /* [in] */ double YBase,
    /* [in] */ double Scale,
    /* [in] */ double Angle,
    /* [in] */ VARIANT_BOOL ScaleProjLinesSize,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_ReadFragment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_WriteFragment_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ BSTR FileName,
    BSTR Comment,
    /* [in] */ double XBase,
    /* [in] */ double YBase,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_WriteFragment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_WriteToClip_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL AttrCopy,
    /* [in] */ VARIANT_BOOL SpcObjCopy,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_WriteToClip_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_ReadFromClip_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL AttrCopy,
    /* [in] */ VARIANT_BOOL SpcObjCopy,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_ReadFromClip_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_Draw_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [in] */ /* external definition not present */ OLE_HANDLE HWnd,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_Draw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_Open_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_Open_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_Close_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_Close_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingGroup_get_Current_Proxy( 
    IDrawingGroup __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IDrawingGroup_get_Current_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingGroup_INTERFACE_DEFINED__ */


#ifndef __IDrawingGroups_INTERFACE_DEFINED__
#define __IDrawingGroups_INTERFACE_DEFINED__

/* interface IDrawingGroups */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IDrawingGroups,0x0ED06421,0x907C,0x4ef0,0x89,0xF7,0xAE,0xFC,0x81,0xBE,0xF1,0xDF);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0ED06421-907C-4ef0-89F7-AEFC81BEF1DF")
    IDrawingGroups : public IKompasCollection
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT_BOOL temp,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDrawingGroupsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IDrawingGroups __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IDrawingGroups __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IDrawingGroups __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IDrawingGroups __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IDrawingGroups __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IDrawingGroups __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IDrawingGroups __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IDrawingGroups __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IDrawingGroups __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IDrawingGroups __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IDrawingGroups __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IDrawingGroups __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IDrawingGroups __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IDrawingGroups __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IDrawingGroups __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL temp,
            /* [in] */ BSTR Name,
            /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IDrawingGroupsVtbl;

    interface IDrawingGroups
    {
        CONST_VTBL struct IDrawingGroupsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDrawingGroups_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDrawingGroups_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDrawingGroups_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDrawingGroups_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDrawingGroups_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDrawingGroups_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDrawingGroups_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDrawingGroups_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IDrawingGroups_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IDrawingGroups_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IDrawingGroups_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IDrawingGroups_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IDrawingGroups_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IDrawingGroups_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IDrawingGroups_Add(This,temp,Name,Result)	\
    (This)->lpVtbl -> Add(This,temp,Name,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IDrawingGroups_get_Item_Proxy( 
    IDrawingGroups __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingGroups_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDrawingGroups_Add_Proxy( 
    IDrawingGroups __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL temp,
    /* [in] */ BSTR Name,
    /* [retval][out] */ IDrawingGroup __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IDrawingGroups_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDrawingGroups_INTERFACE_DEFINED__ */


#ifndef __IBoundariesObject_INTERFACE_DEFINED__
#define __IBoundariesObject_INTERFACE_DEFINED__

/* interface IBoundariesObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBoundariesObject,0x7198C93A,0x7655,0x4347,0x99,0x54,0xBA,0x9A,0xA2,0x8D,0x06,0x08);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7198C93A-7655-4347-9954-BA9AA28D0608")
    IBoundariesObject : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Boundaries( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBoundaries( 
            /* [in] */ VARIANT Objects,
            VARIANT_BOOL DeleteSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBoundariesObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBoundariesObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBoundariesObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBoundariesObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBoundariesObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBoundariesObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBoundariesObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBoundariesObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Boundaries )( 
            IBoundariesObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddBoundaries )( 
            IBoundariesObject __RPC_FAR * This,
            /* [in] */ VARIANT Objects,
            VARIANT_BOOL DeleteSource,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IBoundariesObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IBoundariesObjectVtbl;

    interface IBoundariesObject
    {
        CONST_VTBL struct IBoundariesObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBoundariesObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBoundariesObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBoundariesObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBoundariesObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBoundariesObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBoundariesObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBoundariesObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBoundariesObject_get_Boundaries(This,PVal)	\
    (This)->lpVtbl -> get_Boundaries(This,PVal)

#define IBoundariesObject_AddBoundaries(This,Objects,DeleteSource,Result)	\
    (This)->lpVtbl -> AddBoundaries(This,Objects,DeleteSource,Result)

#define IBoundariesObject_Clear(This,Result)	\
    (This)->lpVtbl -> Clear(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBoundariesObject_get_Boundaries_Proxy( 
    IBoundariesObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB IBoundariesObject_get_Boundaries_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBoundariesObject_AddBoundaries_Proxy( 
    IBoundariesObject __RPC_FAR * This,
    /* [in] */ VARIANT Objects,
    VARIANT_BOOL DeleteSource,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBoundariesObject_AddBoundaries_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBoundariesObject_Clear_Proxy( 
    IBoundariesObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IBoundariesObject_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBoundariesObject_INTERFACE_DEFINED__ */


#ifndef __IHatch_INTERFACE_DEFINED__
#define __IHatch_INTERFACE_DEFINED__

/* interface IHatch */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IHatch,0x826C0B5B,0x0146,0x417a,0x81,0x28,0xE5,0x81,0xF8,0x43,0x0F,0x37);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("826C0B5B-0146-417a-8128-E581F8430F37")
    IHatch : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Side( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Side( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHatchVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IHatch __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IHatch __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IHatch __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IHatch __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IHatch __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IHatch __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IHatch __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IHatch __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IHatch __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            IHatch __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            IHatch __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Side )( 
            IHatch __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Side )( 
            IHatch __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        END_INTERFACE
    } IHatchVtbl;

    interface IHatch
    {
        CONST_VTBL struct IHatchVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHatch_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHatch_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHatch_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHatch_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHatch_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IHatch_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IHatch_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IHatch_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IHatch_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IHatch_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IHatch_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IHatch_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IHatch_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IHatch_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IHatch_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IHatch_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IHatch_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IHatch_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define IHatch_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define IHatch_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define IHatch_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define IHatch_get_Side(This,Result)	\
    (This)->lpVtbl -> get_Side(This,Result)

#define IHatch_put_Side(This,Value)	\
    (This)->lpVtbl -> put_Side(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatch_get_X_Proxy( 
    IHatch __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IHatch_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatch_put_X_Proxy( 
    IHatch __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHatch_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatch_get_Y_Proxy( 
    IHatch __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IHatch_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatch_put_Y_Proxy( 
    IHatch __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IHatch_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatch_get_Side_Proxy( 
    IHatch __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IHatch_get_Side_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IHatch_put_Side_Proxy( 
    IHatch __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IHatch_put_Side_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHatch_INTERFACE_DEFINED__ */


#ifndef __IColouring_INTERFACE_DEFINED__
#define __IColouring_INTERFACE_DEFINED__

/* interface IColouring */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IColouring,0x1E0EF1B5,0x08D3,0x40b6,0x89,0x3E,0x3E,0xE7,0xE4,0xFA,0xEC,0x98);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1E0EF1B5-08D3-40b6-893E-3EE7E4FAEC98")
    IColouring : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ColouringType( 
            /* [retval][out] */ /* external definition not present */ ksColouringTypeEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ColouringType( 
            /* [in] */ /* external definition not present */ ksColouringTypeEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color1( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color1( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Color2( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Color2( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Transparency1( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Transparency1( 
            /* [in] */ long PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Transparency2( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Transparency2( 
            /* [in] */ long PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientType( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientCount( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradientAngle( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_GradientAngle( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGradations( 
            /* [out] */ VARIANT __RPC_FAR *Positions,
            /* [out] */ VARIANT __RPC_FAR *Colors,
            /* [out] */ VARIANT __RPC_FAR *Transparences,
            /* [out] */ VARIANT __RPC_FAR *Interpolations,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGradations( 
            /* [in] */ VARIANT Positions,
            /* [in] */ VARIANT Colors,
            /* [in] */ VARIANT Transparences,
            /* [in] */ VARIANT Interpolations,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddGradation( 
            /* [in] */ long Position,
            /* [in] */ long Color,
            /* [in] */ long Transparency,
            /* [in] */ VARIANT_BOOL Interpolation,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearGradations( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GradationsCount( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGradation( 
            /* [in] */ long Index,
            /* [out] */ long __RPC_FAR *Position,
            /* [out] */ long __RPC_FAR *Color,
            /* [out] */ long __RPC_FAR *Transparency,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Interpolation,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGradation( 
            /* [in] */ long Index,
            /* [in] */ long Position,
            /* [in] */ long Color,
            /* [in] */ long Transparency,
            /* [in] */ VARIANT_BOOL Interpolation,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteGradation( 
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE FindPosition( 
            /* [in] */ long Position,
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IColouringVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IColouring __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IColouring __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IColouring __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IColouring __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IColouring __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IColouring __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IColouring __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IColouring __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ColouringType )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksColouringTypeEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ColouringType )( 
            IColouring __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksColouringTypeEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color1 )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color1 )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Color2 )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Color2 )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Transparency1 )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Transparency1 )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Transparency2 )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Transparency2 )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GradientType )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_GradientType )( 
            IColouring __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GradientCount )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_GradientCount )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GradientAngle )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_GradientAngle )( 
            IColouring __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            IColouring __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            IColouring __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGradations )( 
            IColouring __RPC_FAR * This,
            /* [out] */ VARIANT __RPC_FAR *Positions,
            /* [out] */ VARIANT __RPC_FAR *Colors,
            /* [out] */ VARIANT __RPC_FAR *Transparences,
            /* [out] */ VARIANT __RPC_FAR *Interpolations,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGradations )( 
            IColouring __RPC_FAR * This,
            /* [in] */ VARIANT Positions,
            /* [in] */ VARIANT Colors,
            /* [in] */ VARIANT Transparences,
            /* [in] */ VARIANT Interpolations,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddGradation )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Position,
            /* [in] */ long Color,
            /* [in] */ long Transparency,
            /* [in] */ VARIANT_BOOL Interpolation,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearGradations )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GradationsCount )( 
            IColouring __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGradation )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ long __RPC_FAR *Position,
            /* [out] */ long __RPC_FAR *Color,
            /* [out] */ long __RPC_FAR *Transparency,
            /* [out] */ VARIANT_BOOL __RPC_FAR *Interpolation,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetGradation )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ long Position,
            /* [in] */ long Color,
            /* [in] */ long Transparency,
            /* [in] */ VARIANT_BOOL Interpolation,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteGradation )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FindPosition )( 
            IColouring __RPC_FAR * This,
            /* [in] */ long Position,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        END_INTERFACE
    } IColouringVtbl;

    interface IColouring
    {
        CONST_VTBL struct IColouringVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IColouring_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IColouring_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IColouring_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IColouring_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IColouring_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IColouring_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IColouring_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IColouring_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IColouring_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IColouring_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IColouring_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IColouring_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IColouring_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IColouring_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IColouring_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IColouring_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IColouring_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IColouring_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IColouring_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IColouring_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IColouring_get_ColouringType(This,Result)	\
    (This)->lpVtbl -> get_ColouringType(This,Result)

#define IColouring_put_ColouringType(This,Value)	\
    (This)->lpVtbl -> put_ColouringType(This,Value)

#define IColouring_get_Color1(This,Result)	\
    (This)->lpVtbl -> get_Color1(This,Result)

#define IColouring_put_Color1(This,Value)	\
    (This)->lpVtbl -> put_Color1(This,Value)

#define IColouring_get_Color2(This,Result)	\
    (This)->lpVtbl -> get_Color2(This,Result)

#define IColouring_put_Color2(This,Value)	\
    (This)->lpVtbl -> put_Color2(This,Value)

#define IColouring_get_Transparency1(This,PVal)	\
    (This)->lpVtbl -> get_Transparency1(This,PVal)

#define IColouring_put_Transparency1(This,PVal)	\
    (This)->lpVtbl -> put_Transparency1(This,PVal)

#define IColouring_get_Transparency2(This,PVal)	\
    (This)->lpVtbl -> get_Transparency2(This,PVal)

#define IColouring_put_Transparency2(This,PVal)	\
    (This)->lpVtbl -> put_Transparency2(This,PVal)

#define IColouring_get_GradientType(This,Result)	\
    (This)->lpVtbl -> get_GradientType(This,Result)

#define IColouring_put_GradientType(This,Value)	\
    (This)->lpVtbl -> put_GradientType(This,Value)

#define IColouring_get_GradientCount(This,Result)	\
    (This)->lpVtbl -> get_GradientCount(This,Result)

#define IColouring_put_GradientCount(This,Value)	\
    (This)->lpVtbl -> put_GradientCount(This,Value)

#define IColouring_get_GradientAngle(This,Result)	\
    (This)->lpVtbl -> get_GradientAngle(This,Result)

#define IColouring_put_GradientAngle(This,Value)	\
    (This)->lpVtbl -> put_GradientAngle(This,Value)

#define IColouring_get_Xc(This,Result)	\
    (This)->lpVtbl -> get_Xc(This,Result)

#define IColouring_put_Xc(This,Value)	\
    (This)->lpVtbl -> put_Xc(This,Value)

#define IColouring_get_Yc(This,Result)	\
    (This)->lpVtbl -> get_Yc(This,Result)

#define IColouring_put_Yc(This,Value)	\
    (This)->lpVtbl -> put_Yc(This,Value)

#define IColouring_GetGradations(This,Positions,Colors,Transparences,Interpolations,Result)	\
    (This)->lpVtbl -> GetGradations(This,Positions,Colors,Transparences,Interpolations,Result)

#define IColouring_SetGradations(This,Positions,Colors,Transparences,Interpolations,Result)	\
    (This)->lpVtbl -> SetGradations(This,Positions,Colors,Transparences,Interpolations,Result)

#define IColouring_AddGradation(This,Position,Color,Transparency,Interpolation,Result)	\
    (This)->lpVtbl -> AddGradation(This,Position,Color,Transparency,Interpolation,Result)

#define IColouring_ClearGradations(This,Result)	\
    (This)->lpVtbl -> ClearGradations(This,Result)

#define IColouring_get_GradationsCount(This,Result)	\
    (This)->lpVtbl -> get_GradationsCount(This,Result)

#define IColouring_GetGradation(This,Index,Position,Color,Transparency,Interpolation,Result)	\
    (This)->lpVtbl -> GetGradation(This,Index,Position,Color,Transparency,Interpolation,Result)

#define IColouring_SetGradation(This,Index,Position,Color,Transparency,Interpolation,Result)	\
    (This)->lpVtbl -> SetGradation(This,Index,Position,Color,Transparency,Interpolation,Result)

#define IColouring_DeleteGradation(This,Index,Result)	\
    (This)->lpVtbl -> DeleteGradation(This,Index,Result)

#define IColouring_FindPosition(This,Position,Result)	\
    (This)->lpVtbl -> FindPosition(This,Position,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_ColouringType_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksColouringTypeEnum __RPC_FAR *Result);


void __RPC_STUB IColouring_get_ColouringType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_ColouringType_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksColouringTypeEnum Value);


void __RPC_STUB IColouring_put_ColouringType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_Color1_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_get_Color1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_Color1_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IColouring_put_Color1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_Color2_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_get_Color2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_Color2_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IColouring_put_Color2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_Transparency1_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IColouring_get_Transparency1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_Transparency1_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long PVal);


void __RPC_STUB IColouring_put_Transparency1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_Transparency2_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IColouring_get_Transparency2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_Transparency2_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long PVal);


void __RPC_STUB IColouring_put_Transparency2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_GradientType_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColouring_get_GradientType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_GradientType_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IColouring_put_GradientType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_GradientCount_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_get_GradientCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_GradientCount_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IColouring_put_GradientCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_GradientAngle_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IColouring_get_GradientAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_GradientAngle_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IColouring_put_GradientAngle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_Xc_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IColouring_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_Xc_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IColouring_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_Yc_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB IColouring_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IColouring_put_Yc_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB IColouring_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_GetGradations_Proxy( 
    IColouring __RPC_FAR * This,
    /* [out] */ VARIANT __RPC_FAR *Positions,
    /* [out] */ VARIANT __RPC_FAR *Colors,
    /* [out] */ VARIANT __RPC_FAR *Transparences,
    /* [out] */ VARIANT __RPC_FAR *Interpolations,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColouring_GetGradations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_SetGradations_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ VARIANT Positions,
    /* [in] */ VARIANT Colors,
    /* [in] */ VARIANT Transparences,
    /* [in] */ VARIANT Interpolations,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColouring_SetGradations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_AddGradation_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Position,
    /* [in] */ long Color,
    /* [in] */ long Transparency,
    /* [in] */ VARIANT_BOOL Interpolation,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_AddGradation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_ClearGradations_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColouring_ClearGradations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColouring_get_GradationsCount_Proxy( 
    IColouring __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_get_GradationsCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_GetGradation_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ long __RPC_FAR *Position,
    /* [out] */ long __RPC_FAR *Color,
    /* [out] */ long __RPC_FAR *Transparency,
    /* [out] */ VARIANT_BOOL __RPC_FAR *Interpolation,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColouring_GetGradation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_SetGradation_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ long Position,
    /* [in] */ long Color,
    /* [in] */ long Transparency,
    /* [in] */ VARIANT_BOOL Interpolation,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_SetGradation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_DeleteGradation_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IColouring_DeleteGradation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColouring_FindPosition_Proxy( 
    IColouring __RPC_FAR * This,
    /* [in] */ long Position,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IColouring_FindPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IColouring_INTERFACE_DEFINED__ */


#ifndef __IHatches_INTERFACE_DEFINED__
#define __IHatches_INTERFACE_DEFINED__

/* interface IHatches */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IHatches,0xB7E776B0,0x9524,0x4254,0x9D,0x1F,0x0C,0xF8,0xE0,0x31,0x4A,0x1B);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B7E776B0-9524-4254-9D1F-0CF8E0314A1B")
    IHatches : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Hatch( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IHatch __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IHatch __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHatchesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IHatches __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IHatches __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IHatches __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IHatches __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IHatches __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IHatches __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IHatches __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IHatches __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hatch )( 
            IHatches __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IHatch __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IHatches __RPC_FAR * This,
            /* [retval][out] */ IHatch __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IHatchesVtbl;

    interface IHatches
    {
        CONST_VTBL struct IHatchesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHatches_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHatches_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHatches_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHatches_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHatches_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHatches_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHatches_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHatches_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IHatches_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IHatches_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IHatches_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IHatches_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IHatches_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IHatches_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IHatches_get_Hatch(This,Index,Result)	\
    (This)->lpVtbl -> get_Hatch(This,Index,Result)

#define IHatches_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IHatches_get_Hatch_Proxy( 
    IHatches __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IHatch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IHatches_get_Hatch_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IHatches_Add_Proxy( 
    IHatches __RPC_FAR * This,
    /* [retval][out] */ IHatch __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IHatches_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHatches_INTERFACE_DEFINED__ */


#ifndef __IColourings_INTERFACE_DEFINED__
#define __IColourings_INTERFACE_DEFINED__

/* interface IColourings */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IColourings,0x60437DAD,0x2688,0x4146,0xB7,0x65,0x3F,0xCC,0x55,0xC3,0x9D,0x0F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("60437DAD-2688-4146-B765-3FCC55C39D0F")
    IColourings : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Colouring( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IColouring __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IColouring __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IColouringsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IColourings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IColourings __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IColourings __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IColourings __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IColourings __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IColourings __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IColourings __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IColourings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Colouring )( 
            IColourings __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IColouring __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IColourings __RPC_FAR * This,
            /* [retval][out] */ IColouring __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IColouringsVtbl;

    interface IColourings
    {
        CONST_VTBL struct IColouringsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IColourings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IColourings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IColourings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IColourings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IColourings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IColourings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IColourings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IColourings_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IColourings_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IColourings_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IColourings_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IColourings_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IColourings_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IColourings_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IColourings_get_Colouring(This,Index,Result)	\
    (This)->lpVtbl -> get_Colouring(This,Index,Result)

#define IColourings_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IColourings_get_Colouring_Proxy( 
    IColourings __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IColouring __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IColourings_get_Colouring_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IColourings_Add_Proxy( 
    IColourings __RPC_FAR * This,
    /* [retval][out] */ IColouring __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IColourings_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IColourings_INTERFACE_DEFINED__ */


#ifndef __ISpecRough_INTERFACE_DEFINED__
#define __ISpecRough_INTERFACE_DEFINED__

/* interface ISpecRough */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ISpecRough,0xD723AAC1,0x0315,0x4aed,0x99,0xBF,0x88,0xA7,0xE5,0x5B,0x6E,0x6D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D723AAC1-0315-4aed-99BF-88A7E55B6E6D")
    ISpecRough : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ double __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y( 
            /* [in] */ double Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoPlacement( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoPlacement( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SignType( 
            /* [retval][out] */ /* external definition not present */ ksRoughSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SignType( 
            /* [in] */ /* external definition not present */ ksRoughSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Text( 
            /* [in] */ BSTR PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Distance( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Distance( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AddSign( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AddSign( 
            /* [in] */ VARIANT_BOOL PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsCreated( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISpecRoughVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ISpecRough __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ISpecRough __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ISpecRough __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ double Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoPlacement )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoPlacement )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SignType )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksRoughSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SignType )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksRoughSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Text )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ BSTR PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Distance )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Distance )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AddSign )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AddSign )( 
            ISpecRough __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsCreated )( 
            ISpecRough __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } ISpecRoughVtbl;

    interface ISpecRough
    {
        CONST_VTBL struct ISpecRoughVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISpecRough_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISpecRough_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISpecRough_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISpecRough_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISpecRough_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISpecRough_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISpecRough_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISpecRough_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ISpecRough_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ISpecRough_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ISpecRough_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ISpecRough_get_X(This,Result)	\
    (This)->lpVtbl -> get_X(This,Result)

#define ISpecRough_put_X(This,Value)	\
    (This)->lpVtbl -> put_X(This,Value)

#define ISpecRough_get_Y(This,Result)	\
    (This)->lpVtbl -> get_Y(This,Result)

#define ISpecRough_put_Y(This,Value)	\
    (This)->lpVtbl -> put_Y(This,Value)

#define ISpecRough_put_AutoPlacement(This,Val)	\
    (This)->lpVtbl -> put_AutoPlacement(This,Val)

#define ISpecRough_get_AutoPlacement(This,PVal)	\
    (This)->lpVtbl -> get_AutoPlacement(This,PVal)

#define ISpecRough_get_SignType(This,Result)	\
    (This)->lpVtbl -> get_SignType(This,Result)

#define ISpecRough_put_SignType(This,Value)	\
    (This)->lpVtbl -> put_SignType(This,Value)

#define ISpecRough_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define ISpecRough_put_Text(This,PVal)	\
    (This)->lpVtbl -> put_Text(This,PVal)

#define ISpecRough_get_Distance(This,PVal)	\
    (This)->lpVtbl -> get_Distance(This,PVal)

#define ISpecRough_put_Distance(This,PVal)	\
    (This)->lpVtbl -> put_Distance(This,PVal)

#define ISpecRough_get_AddSign(This,PRes)	\
    (This)->lpVtbl -> get_AddSign(This,PRes)

#define ISpecRough_put_AddSign(This,PVal)	\
    (This)->lpVtbl -> put_AddSign(This,PVal)

#define ISpecRough_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ISpecRough_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ISpecRough_get_IsCreated(This,Result)	\
    (This)->lpVtbl -> get_IsCreated(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_X_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ISpecRough_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_X_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ISpecRough_put_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_Y_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Result);


void __RPC_STUB ISpecRough_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_Y_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ double Value);


void __RPC_STUB ISpecRough_put_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_AutoPlacement_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ISpecRough_put_AutoPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_AutoPlacement_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ISpecRough_get_AutoPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_SignType_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksRoughSignEnum __RPC_FAR *Result);


void __RPC_STUB ISpecRough_get_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_SignType_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksRoughSignEnum Value);


void __RPC_STUB ISpecRough_put_SignType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_Text_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB ISpecRough_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_Text_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ BSTR PVal);


void __RPC_STUB ISpecRough_put_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_Distance_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ISpecRough_get_Distance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_Distance_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB ISpecRough_put_Distance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_AddSign_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ISpecRough_get_AddSign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ISpecRough_put_AddSign_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL PVal);


void __RPC_STUB ISpecRough_put_AddSign_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecRough_Update_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ISpecRough_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ISpecRough_Delete_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ISpecRough_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ISpecRough_get_IsCreated_Proxy( 
    ISpecRough __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ISpecRough_get_IsCreated_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISpecRough_INTERFACE_DEFINED__ */


#ifndef __ITechnicalDemand_INTERFACE_DEFINED__
#define __ITechnicalDemand_INTERFACE_DEFINED__

/* interface ITechnicalDemand */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ITechnicalDemand,0x18C80AE5,0xBF92,0x482a,0x9C,0x56,0x3D,0x16,0x38,0xF5,0xE5,0xF5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("18C80AE5-BF92-482a-9C56-3D1638F5E5F5")
    ITechnicalDemand : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlocksGabarits( 
            /* [retval][out] */ VARIANT __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BlocksGabarits( 
            /* [in] */ VARIANT PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoPlacement( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoPlacement( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsCreated( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BlocksStartLineNumbers( 
            /* [retval][out] */ VARIANT __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ITechnicalDemandVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ITechnicalDemand __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ITechnicalDemand __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Text )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlocksGabarits )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BlocksGabarits )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [in] */ VARIANT PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoPlacement )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoPlacement )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsCreated )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BlocksStartLineNumbers )( 
            ITechnicalDemand __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *Result);
        
        END_INTERFACE
    } ITechnicalDemandVtbl;

    interface ITechnicalDemand
    {
        CONST_VTBL struct ITechnicalDemandVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ITechnicalDemand_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ITechnicalDemand_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ITechnicalDemand_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ITechnicalDemand_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ITechnicalDemand_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ITechnicalDemand_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ITechnicalDemand_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ITechnicalDemand_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ITechnicalDemand_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ITechnicalDemand_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ITechnicalDemand_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ITechnicalDemand_get_Text(This,PVal)	\
    (This)->lpVtbl -> get_Text(This,PVal)

#define ITechnicalDemand_get_BlocksGabarits(This,PVal)	\
    (This)->lpVtbl -> get_BlocksGabarits(This,PVal)

#define ITechnicalDemand_put_BlocksGabarits(This,PVal)	\
    (This)->lpVtbl -> put_BlocksGabarits(This,PVal)

#define ITechnicalDemand_put_AutoPlacement(This,Val)	\
    (This)->lpVtbl -> put_AutoPlacement(This,Val)

#define ITechnicalDemand_get_AutoPlacement(This,PVal)	\
    (This)->lpVtbl -> get_AutoPlacement(This,PVal)

#define ITechnicalDemand_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define ITechnicalDemand_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define ITechnicalDemand_get_IsCreated(This,Result)	\
    (This)->lpVtbl -> get_IsCreated(This,Result)

#define ITechnicalDemand_get_BlocksStartLineNumbers(This,Result)	\
    (This)->lpVtbl -> get_BlocksStartLineNumbers(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_get_Text_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ IText __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB ITechnicalDemand_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_get_BlocksGabarits_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *PVal);


void __RPC_STUB ITechnicalDemand_get_BlocksGabarits_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_put_BlocksGabarits_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [in] */ VARIANT PVal);


void __RPC_STUB ITechnicalDemand_put_BlocksGabarits_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_put_AutoPlacement_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ITechnicalDemand_put_AutoPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_get_AutoPlacement_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ITechnicalDemand_get_AutoPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_Update_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ITechnicalDemand_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_Delete_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB ITechnicalDemand_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_get_IsCreated_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB ITechnicalDemand_get_IsCreated_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ITechnicalDemand_get_BlocksStartLineNumbers_Proxy( 
    ITechnicalDemand __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *Result);


void __RPC_STUB ITechnicalDemand_get_BlocksStartLineNumbers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ITechnicalDemand_INTERFACE_DEFINED__ */


#ifndef __IRaster_INTERFACE_DEFINED__
#define __IRaster_INTERFACE_DEFINED__

/* interface IRaster */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRaster,0xDEED8D7B,0x404B,0x4f17,0xB4,0x2A,0x2F,0x5E,0x64,0x81,0x8D,0x0A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DEED8D7B-404B-4f17-B42A-2F5E64818D0A")
    IRaster : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPlacement( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPlacement( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
            /* [in] */ BSTR NewText) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionType( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Resolution( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Resolution( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DisplayModePartial( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DisplayModePartial( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Height( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Width( 
            /* [in] */ double PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceHeight( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SourceWidth( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Palette( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsEnableChangeResolution( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsCutBoundarySet( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRasterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRaster __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRaster __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRaster __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRaster __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRaster __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRaster __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRaster __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IRaster __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IRaster __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPlacement )( 
            IRaster __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlacement )( 
            IRaster __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IRaster __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
            IRaster __RPC_FAR * This,
            /* [in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertionType )( 
            IRaster __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionType )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Resolution )( 
            IRaster __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Resolution )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DisplayModePartial )( 
            IRaster __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DisplayModePartial )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Height )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Height )( 
            IRaster __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Width )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Width )( 
            IRaster __RPC_FAR * This,
            /* [in] */ double PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceHeight )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SourceWidth )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Palette )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsEnableChangeResolution )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_IsCutBoundarySet )( 
            IRaster __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IRasterVtbl;

    interface IRaster
    {
        CONST_VTBL struct IRasterVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRaster_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRaster_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRaster_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRaster_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRaster_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRaster_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRaster_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRaster_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRaster_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRaster_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRaster_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRaster_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IRaster_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IRaster_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IRaster_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IRaster_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IRaster_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IRaster_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IRaster_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IRaster_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IRaster_GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IRaster_SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IRaster_put_Scale(This,NewVal)	\
    (This)->lpVtbl -> put_Scale(This,NewVal)

#define IRaster_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IRaster_put_FileName(This,NewText)	\
    (This)->lpVtbl -> put_FileName(This,NewText)

#define IRaster_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IRaster_put_InsertionType(This,NewVal)	\
    (This)->lpVtbl -> put_InsertionType(This,NewVal)

#define IRaster_get_InsertionType(This,PVal)	\
    (This)->lpVtbl -> get_InsertionType(This,PVal)

#define IRaster_put_Resolution(This,NewVal)	\
    (This)->lpVtbl -> put_Resolution(This,NewVal)

#define IRaster_get_Resolution(This,PVal)	\
    (This)->lpVtbl -> get_Resolution(This,PVal)

#define IRaster_put_DisplayModePartial(This,NewVal)	\
    (This)->lpVtbl -> put_DisplayModePartial(This,NewVal)

#define IRaster_get_DisplayModePartial(This,PVal)	\
    (This)->lpVtbl -> get_DisplayModePartial(This,PVal)

#define IRaster_get_Height(This,PVal)	\
    (This)->lpVtbl -> get_Height(This,PVal)

#define IRaster_put_Height(This,PVal)	\
    (This)->lpVtbl -> put_Height(This,PVal)

#define IRaster_get_Width(This,PVal)	\
    (This)->lpVtbl -> get_Width(This,PVal)

#define IRaster_put_Width(This,PVal)	\
    (This)->lpVtbl -> put_Width(This,PVal)

#define IRaster_get_SourceHeight(This,PVal)	\
    (This)->lpVtbl -> get_SourceHeight(This,PVal)

#define IRaster_get_SourceWidth(This,PVal)	\
    (This)->lpVtbl -> get_SourceWidth(This,PVal)

#define IRaster_get_Palette(This,PVal)	\
    (This)->lpVtbl -> get_Palette(This,PVal)

#define IRaster_get_IsEnableChangeResolution(This,PVal)	\
    (This)->lpVtbl -> get_IsEnableChangeResolution(This,PVal)

#define IRaster_get_IsCutBoundarySet(This,PVal)	\
    (This)->lpVtbl -> get_IsCutBoundarySet(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRaster_GetPlacement_Proxy( 
    IRaster __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Angle,
    /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRaster_GetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRaster_SetPlacement_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Angle,
    /* [in] */ VARIANT_BOOL MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IRaster_SetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_Scale_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRaster_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_Scale_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_FileName_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ BSTR NewText);


void __RPC_STUB IRaster_put_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_FileName_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_InsertionType_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IRaster_put_InsertionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_InsertionType_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_InsertionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_Resolution_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IRaster_put_Resolution_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_Resolution_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_Resolution_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_DisplayModePartial_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IRaster_put_DisplayModePartial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_DisplayModePartial_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_DisplayModePartial_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_Height_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_Height_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IRaster_put_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_Width_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IRaster_put_Width_Proxy( 
    IRaster __RPC_FAR * This,
    /* [in] */ double PVal);


void __RPC_STUB IRaster_put_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_SourceHeight_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_SourceHeight_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_SourceWidth_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_SourceWidth_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_Palette_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_Palette_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_IsEnableChangeResolution_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_IsEnableChangeResolution_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRaster_get_IsCutBoundarySet_Proxy( 
    IRaster __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IRaster_get_IsCutBoundarySet_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRaster_INTERFACE_DEFINED__ */


#ifndef __IRasters_INTERFACE_DEFINED__
#define __IRasters_INTERFACE_DEFINED__

/* interface IRasters */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IRasters,0xC6E4E32D,0xE077,0x4b14,0xB9,0xDE,0x04,0x1B,0xD6,0x28,0xC3,0x8C);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C6E4E32D-E077-4b14-B9DE-041BD628C38C")
    IRasters : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Raster( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRaster __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IRaster __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRastersVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IRasters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IRasters __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IRasters __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IRasters __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IRasters __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IRasters __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IRasters __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IRasters __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Raster )( 
            IRasters __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IRaster __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IRasters __RPC_FAR * This,
            /* [retval][out] */ IRaster __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IRastersVtbl;

    interface IRasters
    {
        CONST_VTBL struct IRastersVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRasters_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRasters_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRasters_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRasters_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRasters_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRasters_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRasters_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRasters_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IRasters_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IRasters_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IRasters_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IRasters_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IRasters_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IRasters_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IRasters_get_Raster(This,Index,Result)	\
    (This)->lpVtbl -> get_Raster(This,Index,Result)

#define IRasters_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IRasters_get_Raster_Proxy( 
    IRasters __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IRaster __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRasters_get_Raster_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRasters_Add_Proxy( 
    IRasters __RPC_FAR * This,
    /* [retval][out] */ IRaster __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IRasters_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRasters_INTERFACE_DEFINED__ */


#ifndef __IOleDrawingObject_INTERFACE_DEFINED__
#define __IOleDrawingObject_INTERFACE_DEFINED__

/* interface IOleDrawingObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IOleDrawingObject,0x9A0ECE23,0x7B60,0x44e0,0x97,0x28,0xC5,0x6C,0xAA,0xA4,0x55,0xA2);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9A0ECE23-7B60-44e0-9728-C56CAAA455A2")
    IOleDrawingObject : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPlacement( 
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPlacement( 
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ClassId( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ClassId( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
            /* [defaultvalue][in] */ BSTR NewText = L"") = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Link( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Link( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InsertionType( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InsertionType( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DoVerb( 
            /* [in] */ long iVerb,
            /* [retval][out] */ LPDISPATCH __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Close( 
            /* [in] */ VARIANT_BOOL Save,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IOleDrawingObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IOleDrawingObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IOleDrawingObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPlacement )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *X,
            /* [out] */ double __RPC_FAR *Y,
            /* [out] */ double __RPC_FAR *Angle,
            /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlacement )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ double X,
            /* [in] */ double Y,
            /* [in] */ double Angle,
            /* [in] */ VARIANT_BOOL MirrorSymmetry,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ClassId )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ClassId )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Link )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Link )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InsertionType )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InsertionType )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DoVerb )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ long iVerb,
            /* [retval][out] */ LPDISPATCH __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Close )( 
            IOleDrawingObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Save,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IOleDrawingObjectVtbl;

    interface IOleDrawingObject
    {
        CONST_VTBL struct IOleDrawingObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IOleDrawingObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IOleDrawingObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IOleDrawingObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IOleDrawingObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IOleDrawingObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IOleDrawingObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IOleDrawingObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IOleDrawingObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IOleDrawingObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IOleDrawingObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IOleDrawingObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IOleDrawingObject_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IOleDrawingObject_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IOleDrawingObject_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IOleDrawingObject_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IOleDrawingObject_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IOleDrawingObject_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IOleDrawingObject_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IOleDrawingObject_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IOleDrawingObject_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IOleDrawingObject_GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> GetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IOleDrawingObject_SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)	\
    (This)->lpVtbl -> SetPlacement(This,X,Y,Angle,MirrorSymmetry,Result)

#define IOleDrawingObject_put_Scale(This,NewVal)	\
    (This)->lpVtbl -> put_Scale(This,NewVal)

#define IOleDrawingObject_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IOleDrawingObject_put_ClassId(This,NewText)	\
    (This)->lpVtbl -> put_ClassId(This,NewText)

#define IOleDrawingObject_get_ClassId(This,PVal)	\
    (This)->lpVtbl -> get_ClassId(This,PVal)

#define IOleDrawingObject_put_FileName(This,NewText)	\
    (This)->lpVtbl -> put_FileName(This,NewText)

#define IOleDrawingObject_get_FileName(This,PVal)	\
    (This)->lpVtbl -> get_FileName(This,PVal)

#define IOleDrawingObject_put_Link(This,NewVal)	\
    (This)->lpVtbl -> put_Link(This,NewVal)

#define IOleDrawingObject_get_Link(This,PVal)	\
    (This)->lpVtbl -> get_Link(This,PVal)

#define IOleDrawingObject_put_InsertionType(This,NewVal)	\
    (This)->lpVtbl -> put_InsertionType(This,NewVal)

#define IOleDrawingObject_get_InsertionType(This,PVal)	\
    (This)->lpVtbl -> get_InsertionType(This,PVal)

#define IOleDrawingObject_DoVerb(This,iVerb,Result)	\
    (This)->lpVtbl -> DoVerb(This,iVerb,Result)

#define IOleDrawingObject_Close(This,Save,Result)	\
    (This)->lpVtbl -> Close(This,Save,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_GetPlacement_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *X,
    /* [out] */ double __RPC_FAR *Y,
    /* [out] */ double __RPC_FAR *Angle,
    /* [out] */ VARIANT_BOOL __RPC_FAR *MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IOleDrawingObject_GetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_SetPlacement_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [in] */ double X,
    /* [in] */ double Y,
    /* [in] */ double Angle,
    /* [in] */ VARIANT_BOOL MirrorSymmetry,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IOleDrawingObject_SetPlacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_put_Scale_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IOleDrawingObject_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_get_Scale_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IOleDrawingObject_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_put_ClassId_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IOleDrawingObject_put_ClassId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_get_ClassId_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IOleDrawingObject_get_ClassId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_put_FileName_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [defaultvalue][in] */ BSTR NewText);


void __RPC_STUB IOleDrawingObject_put_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_get_FileName_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *PVal);


void __RPC_STUB IOleDrawingObject_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_put_Link_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IOleDrawingObject_put_Link_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_get_Link_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IOleDrawingObject_get_Link_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_put_InsertionType_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IOleDrawingObject_put_InsertionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_get_InsertionType_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IOleDrawingObject_get_InsertionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_DoVerb_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [in] */ long iVerb,
    /* [retval][out] */ LPDISPATCH __RPC_FAR *Result);


void __RPC_STUB IOleDrawingObject_DoVerb_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IOleDrawingObject_Close_Proxy( 
    IOleDrawingObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Save,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IOleDrawingObject_Close_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IOleDrawingObject_INTERFACE_DEFINED__ */


#ifndef __IOleDrawingObjects_INTERFACE_DEFINED__
#define __IOleDrawingObjects_INTERFACE_DEFINED__

/* interface IOleDrawingObjects */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IOleDrawingObjects,0xE7A8DD07,0xCD6B,0x45a6,0xB6,0xAF,0x15,0x5A,0x67,0x4B,0xC7,0xE4);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E7A8DD07-CD6B-45a6-B6AF-155A674BC7E4")
    IOleDrawingObjects : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OleDrawingObject( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IOleDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IOleDrawingObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IOleDrawingObjectsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IOleDrawingObjects __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IOleDrawingObjects __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_OleDrawingObject )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IOleDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IOleDrawingObjects __RPC_FAR * This,
            /* [retval][out] */ IOleDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IOleDrawingObjectsVtbl;

    interface IOleDrawingObjects
    {
        CONST_VTBL struct IOleDrawingObjectsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IOleDrawingObjects_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IOleDrawingObjects_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IOleDrawingObjects_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IOleDrawingObjects_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IOleDrawingObjects_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IOleDrawingObjects_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IOleDrawingObjects_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IOleDrawingObjects_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IOleDrawingObjects_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IOleDrawingObjects_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IOleDrawingObjects_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IOleDrawingObjects_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IOleDrawingObjects_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IOleDrawingObjects_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IOleDrawingObjects_get_OleDrawingObject(This,Index,Result)	\
    (This)->lpVtbl -> get_OleDrawingObject(This,Index,Result)

#define IOleDrawingObjects_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IOleDrawingObjects_get_OleDrawingObject_Proxy( 
    IOleDrawingObjects __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IOleDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IOleDrawingObjects_get_OleDrawingObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IOleDrawingObjects_Add_Proxy( 
    IOleDrawingObjects __RPC_FAR * This,
    /* [retval][out] */ IOleDrawingObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IOleDrawingObjects_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IOleDrawingObjects_INTERFACE_DEFINED__ */


#ifndef __IAnnotativeObject_INTERFACE_DEFINED__
#define __IAnnotativeObject_INTERFACE_DEFINED__

/* interface IAnnotativeObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAnnotativeObject,0x0DBD7BCD,0xF78E,0x4bda,0xBC,0xAD,0x30,0x04,0xC6,0x0B,0x6D,0x06);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0DBD7BCD-F78E-4bda-BCAD-3004C60B6D06")
    IAnnotativeObject : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sign1( 
            /* [retval][out] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sign1( 
            /* [in] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sign2( 
            /* [retval][out] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sign2( 
            /* [in] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum Value) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAnnotativeObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAnnotativeObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAnnotativeObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sign1 )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sign1 )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sign2 )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sign2 )( 
            IAnnotativeObject __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum Value);
        
        END_INTERFACE
    } IAnnotativeObjectVtbl;

    interface IAnnotativeObject
    {
        CONST_VTBL struct IAnnotativeObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAnnotativeObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAnnotativeObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAnnotativeObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAnnotativeObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAnnotativeObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAnnotativeObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAnnotativeObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAnnotativeObject_get_Sign1(This,Result)	\
    (This)->lpVtbl -> get_Sign1(This,Result)

#define IAnnotativeObject_put_Sign1(This,Value)	\
    (This)->lpVtbl -> put_Sign1(This,Value)

#define IAnnotativeObject_get_Sign2(This,Result)	\
    (This)->lpVtbl -> get_Sign2(This,Result)

#define IAnnotativeObject_put_Sign2(This,Value)	\
    (This)->lpVtbl -> put_Sign2(This,Value)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAnnotativeObject_get_Sign1_Proxy( 
    IAnnotativeObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum __RPC_FAR *Result);


void __RPC_STUB IAnnotativeObject_get_Sign1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAnnotativeObject_put_Sign1_Proxy( 
    IAnnotativeObject __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum Value);


void __RPC_STUB IAnnotativeObject_put_Sign1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAnnotativeObject_get_Sign2_Proxy( 
    IAnnotativeObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum __RPC_FAR *Result);


void __RPC_STUB IAnnotativeObject_get_Sign2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IAnnotativeObject_put_Sign2_Proxy( 
    IAnnotativeObject __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAnnotativeTerminatorSignEnum Value);


void __RPC_STUB IAnnotativeObject_put_Sign2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAnnotativeObject_INTERFACE_DEFINED__ */


#ifndef __IAnnotativeContainer_INTERFACE_DEFINED__
#define __IAnnotativeContainer_INTERFACE_DEFINED__

/* interface IAnnotativeContainer */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IAnnotativeContainer,0xAE6C238C,0x4398,0x4057,0x9D,0x28,0xD2,0x75,0x95,0x4D,0x95,0x06);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AE6C238C-4398-4057-9D28-D275954D9506")
    IAnnotativeContainer : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* external definition not present */ DrawingObjectTypeEnum type,
            /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateByGeomObject( 
            /* [in] */ IDrawingObject __RPC_FAR *obj,
            /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAnnotativeContainerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IAnnotativeContainer __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IAnnotativeContainer __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* external definition not present */ DrawingObjectTypeEnum type,
            /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateByGeomObject )( 
            IAnnotativeContainer __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *obj,
            /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IAnnotativeContainerVtbl;

    interface IAnnotativeContainer
    {
        CONST_VTBL struct IAnnotativeContainerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAnnotativeContainer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAnnotativeContainer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAnnotativeContainer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAnnotativeContainer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAnnotativeContainer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAnnotativeContainer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAnnotativeContainer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAnnotativeContainer_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)

#define IAnnotativeContainer_get_Count(This,Result)	\
    (This)->lpVtbl -> get_Count(This,Result)

#define IAnnotativeContainer_Add(This,type,Result)	\
    (This)->lpVtbl -> Add(This,type,Result)

#define IAnnotativeContainer_CreateByGeomObject(This,obj,Result)	\
    (This)->lpVtbl -> CreateByGeomObject(This,obj,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAnnotativeContainer_get_Item_Proxy( 
    IAnnotativeContainer __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAnnotativeContainer_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IAnnotativeContainer_get_Count_Proxy( 
    IAnnotativeContainer __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IAnnotativeContainer_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAnnotativeContainer_Add_Proxy( 
    IAnnotativeContainer __RPC_FAR * This,
    /* external definition not present */ DrawingObjectTypeEnum type,
    /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAnnotativeContainer_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IAnnotativeContainer_CreateByGeomObject_Proxy( 
    IAnnotativeContainer __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *obj,
    /* [retval][out] */ IAnnotativeObject __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IAnnotativeContainer_CreateByGeomObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAnnotativeContainer_INTERFACE_DEFINED__ */


#ifndef __IWaveLine_INTERFACE_DEFINED__
#define __IWaveLine_INTERFACE_DEFINED__

/* interface IWaveLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IWaveLine,0xFA2012E1,0xA983,0x47d3,0x9D,0x43,0xB8,0xDC,0x61,0x9A,0xC5,0x54);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FA2012E1-A983-47d3-9D43-B8DC619AC554")
    IWaveLine : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Direction( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HalfWavesCount( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HalfWavesCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_WaveLength( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WaveLength( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetWavesAmplitude( 
            /* [in] */ VARIANT_BOOL Representation,
            /* [in] */ double NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WavesAmplitude( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WavesAmplitudeRepresentation( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoWavesAmplitude( 
            /* [in] */ VARIANT_BOOL PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoWavesAmplitude( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IWaveLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IWaveLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IWaveLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IWaveLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Direction )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Direction )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_HalfWavesCount )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_HalfWavesCount )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_WaveLength )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WaveLength )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetWavesAmplitude )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Representation,
            /* [in] */ double NewVal,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WavesAmplitude )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WavesAmplitudeRepresentation )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoWavesAmplitude )( 
            IWaveLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoWavesAmplitude )( 
            IWaveLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IWaveLineVtbl;

    interface IWaveLine
    {
        CONST_VTBL struct IWaveLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IWaveLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IWaveLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IWaveLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IWaveLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IWaveLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IWaveLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IWaveLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IWaveLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IWaveLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IWaveLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IWaveLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IWaveLine_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IWaveLine_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IWaveLine_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IWaveLine_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IWaveLine_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IWaveLine_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IWaveLine_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IWaveLine_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IWaveLine_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IWaveLine_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IWaveLine_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IWaveLine_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IWaveLine_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IWaveLine_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IWaveLine_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IWaveLine_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IWaveLine_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IWaveLine_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IWaveLine_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IWaveLine_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IWaveLine_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IWaveLine_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IWaveLine_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IWaveLine_put_Direction(This,NewVal)	\
    (This)->lpVtbl -> put_Direction(This,NewVal)

#define IWaveLine_get_Direction(This,PVal)	\
    (This)->lpVtbl -> get_Direction(This,PVal)

#define IWaveLine_put_HalfWavesCount(This,NewVal)	\
    (This)->lpVtbl -> put_HalfWavesCount(This,NewVal)

#define IWaveLine_get_HalfWavesCount(This,PVal)	\
    (This)->lpVtbl -> get_HalfWavesCount(This,PVal)

#define IWaveLine_put_WaveLength(This,NewVal)	\
    (This)->lpVtbl -> put_WaveLength(This,NewVal)

#define IWaveLine_get_WaveLength(This,PVal)	\
    (This)->lpVtbl -> get_WaveLength(This,PVal)

#define IWaveLine_SetWavesAmplitude(This,Representation,NewVal,Result)	\
    (This)->lpVtbl -> SetWavesAmplitude(This,Representation,NewVal,Result)

#define IWaveLine_get_WavesAmplitude(This,PVal)	\
    (This)->lpVtbl -> get_WavesAmplitude(This,PVal)

#define IWaveLine_get_WavesAmplitudeRepresentation(This,PVal)	\
    (This)->lpVtbl -> get_WavesAmplitudeRepresentation(This,PVal)

#define IWaveLine_put_AutoWavesAmplitude(This,PVal)	\
    (This)->lpVtbl -> put_AutoWavesAmplitude(This,PVal)

#define IWaveLine_get_AutoWavesAmplitude(This,PVal)	\
    (This)->lpVtbl -> get_AutoWavesAmplitude(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_X1_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_X1_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_Y1_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_Y1_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_X2_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_X2_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_Y2_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_Y2_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_Angle_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_Angle_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_Length_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_Length_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_Style_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IWaveLine_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_Style_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IWaveLine_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_Direction_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IWaveLine_put_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_Direction_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_Direction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_HalfWavesCount_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IWaveLine_put_HalfWavesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_HalfWavesCount_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_HalfWavesCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_WaveLength_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IWaveLine_put_WaveLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_WaveLength_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_WaveLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IWaveLine_SetWavesAmplitude_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Representation,
    /* [in] */ double NewVal,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IWaveLine_SetWavesAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_WavesAmplitude_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_WavesAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_WavesAmplitudeRepresentation_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_WavesAmplitudeRepresentation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWaveLine_put_AutoWavesAmplitude_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL PVal);


void __RPC_STUB IWaveLine_put_AutoWavesAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLine_get_AutoWavesAmplitude_Proxy( 
    IWaveLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IWaveLine_get_AutoWavesAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IWaveLine_INTERFACE_DEFINED__ */


#ifndef __IWaveLines_INTERFACE_DEFINED__
#define __IWaveLines_INTERFACE_DEFINED__

/* interface IWaveLines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IWaveLines,0xC1F0A911,0x8B4A,0x48b5,0x96,0x11,0x52,0x50,0xD3,0xFC,0x2A,0xCA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C1F0A911-8B4A-48b5-9611-5250D3FC2ACA")
    IWaveLines : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_WaveLine( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IWaveLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IWaveLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IWaveLinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IWaveLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IWaveLines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IWaveLines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IWaveLines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IWaveLines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IWaveLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IWaveLines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IWaveLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_WaveLine )( 
            IWaveLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IWaveLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IWaveLines __RPC_FAR * This,
            /* [retval][out] */ IWaveLine __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IWaveLinesVtbl;

    interface IWaveLines
    {
        CONST_VTBL struct IWaveLinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IWaveLines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IWaveLines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IWaveLines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IWaveLines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IWaveLines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IWaveLines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IWaveLines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IWaveLines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IWaveLines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IWaveLines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IWaveLines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IWaveLines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IWaveLines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IWaveLines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IWaveLines_get_WaveLine(This,Index,Result)	\
    (This)->lpVtbl -> get_WaveLine(This,Index,Result)

#define IWaveLines_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IWaveLines_get_WaveLine_Proxy( 
    IWaveLines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IWaveLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IWaveLines_get_WaveLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IWaveLines_Add_Proxy( 
    IWaveLines __RPC_FAR * This,
    /* [retval][out] */ IWaveLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IWaveLines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IWaveLines_INTERFACE_DEFINED__ */


#ifndef __IBrokenLine_INTERFACE_DEFINED__
#define __IBrokenLine_INTERFACE_DEFINED__

/* interface IBrokenLine */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBrokenLine,0x2482EB44,0x5625,0x4fb9,0xA4,0x6B,0x78,0x14,0x26,0xB0,0x25,0x10);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2482EB44-5625-4fb9-A46B-781426B02510")
    IBrokenLine : public IDrawingObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y1( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_X2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_X2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Y2( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Y2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Length( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Length( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Style( 
            /* [retval][out] */ long __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Style( 
            /* [in] */ long Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_JutValue( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_JutValue( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoJutValue( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoJutValue( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreaksCount( 
            /* [in] */ long NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreaksCount( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakAmplitude( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakAmplitude( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoBreakAmplitude( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoBreakAmplitude( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BreakDisplacement( 
            /* [in] */ double NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BreakDisplacement( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Type1( 
            /* [in] */ VARIANT_BOOL NewVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type1( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBrokenLineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBrokenLine __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBrokenLine __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBrokenLine __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectType )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ DrawingObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_LayerNumber )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_LayerNumber )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Temp )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Update )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DrawingObjectParamType )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksDrawingObjectParamTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DrawingObjectParamType )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksDrawingObjectParamTypeEnum Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X1 )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X1 )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y1 )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y1 )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_X2 )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_X2 )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Y2 )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Y2 )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Length )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Length )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Style )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Style )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ long Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_JutValue )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_JutValue )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoJutValue )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoJutValue )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreaksCount )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreaksCount )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakAmplitude )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakAmplitude )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AutoBreakAmplitude )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AutoBreakAmplitude )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BreakDisplacement )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ double NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BreakDisplacement )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Type1 )( 
            IBrokenLine __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type1 )( 
            IBrokenLine __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IBrokenLineVtbl;

    interface IBrokenLine
    {
        CONST_VTBL struct IBrokenLineVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBrokenLine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBrokenLine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBrokenLine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBrokenLine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBrokenLine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBrokenLine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBrokenLine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBrokenLine_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBrokenLine_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBrokenLine_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBrokenLine_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBrokenLine_get_DrawingObjectType(This,Type)	\
    (This)->lpVtbl -> get_DrawingObjectType(This,Type)

#define IBrokenLine_get_LayerNumber(This,PVal)	\
    (This)->lpVtbl -> get_LayerNumber(This,PVal)

#define IBrokenLine_put_LayerNumber(This,Val)	\
    (This)->lpVtbl -> put_LayerNumber(This,Val)

#define IBrokenLine_get_Temp(This,Type)	\
    (This)->lpVtbl -> get_Temp(This,Type)

#define IBrokenLine_get_Valid(This,Type)	\
    (This)->lpVtbl -> get_Valid(This,Type)

#define IBrokenLine_Update(This,PRes)	\
    (This)->lpVtbl -> Update(This,PRes)

#define IBrokenLine_Delete(This,PRes)	\
    (This)->lpVtbl -> Delete(This,PRes)

#define IBrokenLine_get_DrawingObjectParamType(This,PVal)	\
    (This)->lpVtbl -> get_DrawingObjectParamType(This,PVal)

#define IBrokenLine_put_DrawingObjectParamType(This,Val)	\
    (This)->lpVtbl -> put_DrawingObjectParamType(This,Val)


#define IBrokenLine_put_X1(This,NewVal)	\
    (This)->lpVtbl -> put_X1(This,NewVal)

#define IBrokenLine_get_X1(This,PVal)	\
    (This)->lpVtbl -> get_X1(This,PVal)

#define IBrokenLine_put_Y1(This,NewVal)	\
    (This)->lpVtbl -> put_Y1(This,NewVal)

#define IBrokenLine_get_Y1(This,PVal)	\
    (This)->lpVtbl -> get_Y1(This,PVal)

#define IBrokenLine_put_X2(This,NewVal)	\
    (This)->lpVtbl -> put_X2(This,NewVal)

#define IBrokenLine_get_X2(This,PVal)	\
    (This)->lpVtbl -> get_X2(This,PVal)

#define IBrokenLine_put_Y2(This,NewVal)	\
    (This)->lpVtbl -> put_Y2(This,NewVal)

#define IBrokenLine_get_Y2(This,PVal)	\
    (This)->lpVtbl -> get_Y2(This,PVal)

#define IBrokenLine_put_Length(This,NewVal)	\
    (This)->lpVtbl -> put_Length(This,NewVal)

#define IBrokenLine_get_Length(This,PVal)	\
    (This)->lpVtbl -> get_Length(This,PVal)

#define IBrokenLine_put_Angle(This,NewVal)	\
    (This)->lpVtbl -> put_Angle(This,NewVal)

#define IBrokenLine_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IBrokenLine_get_Style(This,Result)	\
    (This)->lpVtbl -> get_Style(This,Result)

#define IBrokenLine_put_Style(This,Value)	\
    (This)->lpVtbl -> put_Style(This,Value)

#define IBrokenLine_put_JutValue(This,NewVal)	\
    (This)->lpVtbl -> put_JutValue(This,NewVal)

#define IBrokenLine_get_JutValue(This,PVal)	\
    (This)->lpVtbl -> get_JutValue(This,PVal)

#define IBrokenLine_put_AutoJutValue(This,NewVal)	\
    (This)->lpVtbl -> put_AutoJutValue(This,NewVal)

#define IBrokenLine_get_AutoJutValue(This,PVal)	\
    (This)->lpVtbl -> get_AutoJutValue(This,PVal)

#define IBrokenLine_put_BreaksCount(This,NewVal)	\
    (This)->lpVtbl -> put_BreaksCount(This,NewVal)

#define IBrokenLine_get_BreaksCount(This,PVal)	\
    (This)->lpVtbl -> get_BreaksCount(This,PVal)

#define IBrokenLine_put_BreakAmplitude(This,NewVal)	\
    (This)->lpVtbl -> put_BreakAmplitude(This,NewVal)

#define IBrokenLine_get_BreakAmplitude(This,PVal)	\
    (This)->lpVtbl -> get_BreakAmplitude(This,PVal)

#define IBrokenLine_put_AutoBreakAmplitude(This,NewVal)	\
    (This)->lpVtbl -> put_AutoBreakAmplitude(This,NewVal)

#define IBrokenLine_get_AutoBreakAmplitude(This,PVal)	\
    (This)->lpVtbl -> get_AutoBreakAmplitude(This,PVal)

#define IBrokenLine_put_BreakDisplacement(This,NewVal)	\
    (This)->lpVtbl -> put_BreakDisplacement(This,NewVal)

#define IBrokenLine_get_BreakDisplacement(This,PVal)	\
    (This)->lpVtbl -> get_BreakDisplacement(This,PVal)

#define IBrokenLine_put_Type1(This,NewVal)	\
    (This)->lpVtbl -> put_Type1(This,NewVal)

#define IBrokenLine_get_Type1(This,PVal)	\
    (This)->lpVtbl -> get_Type1(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_X1_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_X1_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_X1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_Y1_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_Y1_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_Y1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_X2_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_X2_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_X2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_Y2_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_Y2_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_Y2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_Length_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_Length_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_Length_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_Angle_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_Angle_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_Style_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Result);


void __RPC_STUB IBrokenLine_get_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_Style_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ long Value);


void __RPC_STUB IBrokenLine_put_Style_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_JutValue_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_JutValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_JutValue_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_JutValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_AutoJutValue_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IBrokenLine_put_AutoJutValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_AutoJutValue_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_AutoJutValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_BreaksCount_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ long NewVal);


void __RPC_STUB IBrokenLine_put_BreaksCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_BreaksCount_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_BreaksCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_BreakAmplitude_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_BreakAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_BreakAmplitude_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_BreakAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_AutoBreakAmplitude_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IBrokenLine_put_AutoBreakAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_AutoBreakAmplitude_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_AutoBreakAmplitude_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_BreakDisplacement_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ double NewVal);


void __RPC_STUB IBrokenLine_put_BreakDisplacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_BreakDisplacement_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_BreakDisplacement_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IBrokenLine_put_Type1_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL NewVal);


void __RPC_STUB IBrokenLine_put_Type1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLine_get_Type1_Proxy( 
    IBrokenLine __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IBrokenLine_get_Type1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBrokenLine_INTERFACE_DEFINED__ */


#ifndef __IBrokenLines_INTERFACE_DEFINED__
#define __IBrokenLines_INTERFACE_DEFINED__

/* interface IBrokenLines */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IBrokenLines,0x2A7EADC0,0x5E79,0x4ddb,0x85,0xD5,0xE3,0xED,0xB7,0x43,0x48,0x0D);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2A7EADC0-5E79-4ddb-85D5-E3EDB743480D")
    IBrokenLines : public IDrawingObjects
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BrokenLine( 
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBrokenLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IBrokenLine __RPC_FAR *__RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBrokenLinesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IBrokenLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IBrokenLines __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IBrokenLines __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IBrokenLines __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IBrokenLines __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IBrokenLines __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IBrokenLines __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *PObject);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IBrokenLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BrokenLine )( 
            IBrokenLines __RPC_FAR * This,
            /* [in] */ VARIANT Index,
            /* [retval][out] */ IBrokenLine __RPC_FAR *__RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IBrokenLines __RPC_FAR * This,
            /* [retval][out] */ IBrokenLine __RPC_FAR *__RPC_FAR *Result);
        
        END_INTERFACE
    } IBrokenLinesVtbl;

    interface IBrokenLines
    {
        CONST_VTBL struct IBrokenLinesVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBrokenLines_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBrokenLines_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBrokenLines_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBrokenLines_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBrokenLines_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBrokenLines_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBrokenLines_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBrokenLines_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IBrokenLines_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IBrokenLines_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IBrokenLines_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IBrokenLines_get__NewEnum(This,PObject)	\
    (This)->lpVtbl -> get__NewEnum(This,PObject)

#define IBrokenLines_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)


#define IBrokenLines_get_Item(This,Index,Result)	\
    (This)->lpVtbl -> get_Item(This,Index,Result)


#define IBrokenLines_get_BrokenLine(This,Index,Result)	\
    (This)->lpVtbl -> get_BrokenLine(This,Index,Result)

#define IBrokenLines_Add(This,Result)	\
    (This)->lpVtbl -> Add(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IBrokenLines_get_BrokenLine_Proxy( 
    IBrokenLines __RPC_FAR * This,
    /* [in] */ VARIANT Index,
    /* [retval][out] */ IBrokenLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBrokenLines_get_BrokenLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IBrokenLines_Add_Proxy( 
    IBrokenLines __RPC_FAR * This,
    /* [retval][out] */ IBrokenLine __RPC_FAR *__RPC_FAR *Result);


void __RPC_STUB IBrokenLines_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBrokenLines_INTERFACE_DEFINED__ */


#ifndef __ICopyObjectParam_INTERFACE_DEFINED__
#define __ICopyObjectParam_INTERFACE_DEFINED__

/* interface ICopyObjectParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICopyObjectParam,0x58E1BACA,0x32D5,0x4eab,0x87,0xE9,0xD1,0x48,0x16,0xDA,0xC2,0x9F);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("58E1BACA-32D5-4eab-87E9-D14816DAC29F")
    ICopyObjectParam : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_XOld( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_XOld( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_YOld( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_YOld( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_XNew( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_XNew( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_YNew( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_YNew( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Scale( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Scale( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AttributeCopy( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AttributeCopy( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DimensionLineScale( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DimensionLineScale( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SpecificationObjectCopy( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SpecificationObjectCopy( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICopyObjectParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICopyObjectParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICopyObjectParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XOld )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XOld )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YOld )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YOld )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XNew )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XNew )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YNew )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YNew )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeCopy )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeCopy )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecificationObjectCopy )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationObjectCopy )( 
            ICopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICopyObjectParamVtbl;

    interface ICopyObjectParam
    {
        CONST_VTBL struct ICopyObjectParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICopyObjectParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICopyObjectParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICopyObjectParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICopyObjectParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICopyObjectParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICopyObjectParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICopyObjectParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICopyObjectParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICopyObjectParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICopyObjectParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICopyObjectParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICopyObjectParam_put_XOld(This,Val)	\
    (This)->lpVtbl -> put_XOld(This,Val)

#define ICopyObjectParam_get_XOld(This,PVal)	\
    (This)->lpVtbl -> get_XOld(This,PVal)

#define ICopyObjectParam_put_YOld(This,Val)	\
    (This)->lpVtbl -> put_YOld(This,Val)

#define ICopyObjectParam_get_YOld(This,PVal)	\
    (This)->lpVtbl -> get_YOld(This,PVal)

#define ICopyObjectParam_put_XNew(This,Val)	\
    (This)->lpVtbl -> put_XNew(This,Val)

#define ICopyObjectParam_get_XNew(This,PVal)	\
    (This)->lpVtbl -> get_XNew(This,PVal)

#define ICopyObjectParam_put_YNew(This,Val)	\
    (This)->lpVtbl -> put_YNew(This,Val)

#define ICopyObjectParam_get_YNew(This,PVal)	\
    (This)->lpVtbl -> get_YNew(This,PVal)

#define ICopyObjectParam_put_Scale(This,Val)	\
    (This)->lpVtbl -> put_Scale(This,Val)

#define ICopyObjectParam_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define ICopyObjectParam_put_Angle(This,Val)	\
    (This)->lpVtbl -> put_Angle(This,Val)

#define ICopyObjectParam_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ICopyObjectParam_put_AttributeCopy(This,Val)	\
    (This)->lpVtbl -> put_AttributeCopy(This,Val)

#define ICopyObjectParam_get_AttributeCopy(This,PVal)	\
    (This)->lpVtbl -> get_AttributeCopy(This,PVal)

#define ICopyObjectParam_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define ICopyObjectParam_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define ICopyObjectParam_put_SpecificationObjectCopy(This,Val)	\
    (This)->lpVtbl -> put_SpecificationObjectCopy(This,Val)

#define ICopyObjectParam_get_SpecificationObjectCopy(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationObjectCopy(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_XOld_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICopyObjectParam_put_XOld_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_XOld_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_XOld_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_YOld_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICopyObjectParam_put_YOld_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_YOld_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_YOld_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_XNew_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICopyObjectParam_put_XNew_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_XNew_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_XNew_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_YNew_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICopyObjectParam_put_YNew_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_YNew_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_YNew_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_Scale_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICopyObjectParam_put_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_Scale_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_Scale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_Angle_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICopyObjectParam_put_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_Angle_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_Angle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_AttributeCopy_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICopyObjectParam_put_AttributeCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_AttributeCopy_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_AttributeCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_DimensionLineScale_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICopyObjectParam_put_DimensionLineScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_DimensionLineScale_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_DimensionLineScale_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_put_SpecificationObjectCopy_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICopyObjectParam_put_SpecificationObjectCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICopyObjectParam_get_SpecificationObjectCopy_Proxy( 
    ICopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICopyObjectParam_get_SpecificationObjectCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICopyObjectParam_INTERFACE_DEFINED__ */


#ifndef __ICurveCopyObjectParam_INTERFACE_DEFINED__
#define __ICurveCopyObjectParam_INTERFACE_DEFINED__

/* interface ICurveCopyObjectParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICurveCopyObjectParam,0x12B52A99,0xFF5F,0x4c08,0x9E,0x5E,0xDF,0x7C,0x7A,0xD8,0x34,0xA8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("12B52A99-FF5F-4c08-9E5E-DF7C7AD834A8")
    ICurveCopyObjectParam : public ICopyObjectParam
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BaseCurve( 
            /* [in] */ IDrawingObject __RPC_FAR *Curve) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BaseCurve( 
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Curve) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TurnToNormal( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TurnToNormal( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositiveDirection( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositiveDirection( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepFactor( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepFactor( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICurveCopyObjectParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICurveCopyObjectParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICurveCopyObjectParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XOld )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XOld )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YOld )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YOld )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XNew )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XNew )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YNew )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YNew )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeCopy )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeCopy )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecificationObjectCopy )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationObjectCopy )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BaseCurve )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ IDrawingObject __RPC_FAR *Curve);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BaseCurve )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Curve);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TurnToNormal )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TurnToNormal )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositiveDirection )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositiveDirection )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepFactor )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepFactor )( 
            ICurveCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICurveCopyObjectParamVtbl;

    interface ICurveCopyObjectParam
    {
        CONST_VTBL struct ICurveCopyObjectParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICurveCopyObjectParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICurveCopyObjectParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICurveCopyObjectParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICurveCopyObjectParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICurveCopyObjectParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICurveCopyObjectParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICurveCopyObjectParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICurveCopyObjectParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICurveCopyObjectParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICurveCopyObjectParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICurveCopyObjectParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICurveCopyObjectParam_put_XOld(This,Val)	\
    (This)->lpVtbl -> put_XOld(This,Val)

#define ICurveCopyObjectParam_get_XOld(This,PVal)	\
    (This)->lpVtbl -> get_XOld(This,PVal)

#define ICurveCopyObjectParam_put_YOld(This,Val)	\
    (This)->lpVtbl -> put_YOld(This,Val)

#define ICurveCopyObjectParam_get_YOld(This,PVal)	\
    (This)->lpVtbl -> get_YOld(This,PVal)

#define ICurveCopyObjectParam_put_XNew(This,Val)	\
    (This)->lpVtbl -> put_XNew(This,Val)

#define ICurveCopyObjectParam_get_XNew(This,PVal)	\
    (This)->lpVtbl -> get_XNew(This,PVal)

#define ICurveCopyObjectParam_put_YNew(This,Val)	\
    (This)->lpVtbl -> put_YNew(This,Val)

#define ICurveCopyObjectParam_get_YNew(This,PVal)	\
    (This)->lpVtbl -> get_YNew(This,PVal)

#define ICurveCopyObjectParam_put_Scale(This,Val)	\
    (This)->lpVtbl -> put_Scale(This,Val)

#define ICurveCopyObjectParam_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define ICurveCopyObjectParam_put_Angle(This,Val)	\
    (This)->lpVtbl -> put_Angle(This,Val)

#define ICurveCopyObjectParam_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ICurveCopyObjectParam_put_AttributeCopy(This,Val)	\
    (This)->lpVtbl -> put_AttributeCopy(This,Val)

#define ICurveCopyObjectParam_get_AttributeCopy(This,PVal)	\
    (This)->lpVtbl -> get_AttributeCopy(This,PVal)

#define ICurveCopyObjectParam_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define ICurveCopyObjectParam_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define ICurveCopyObjectParam_put_SpecificationObjectCopy(This,Val)	\
    (This)->lpVtbl -> put_SpecificationObjectCopy(This,Val)

#define ICurveCopyObjectParam_get_SpecificationObjectCopy(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationObjectCopy(This,PVal)


#define ICurveCopyObjectParam_put_BaseCurve(This,Curve)	\
    (This)->lpVtbl -> put_BaseCurve(This,Curve)

#define ICurveCopyObjectParam_get_BaseCurve(This,Curve)	\
    (This)->lpVtbl -> get_BaseCurve(This,Curve)

#define ICurveCopyObjectParam_put_Step(This,Val)	\
    (This)->lpVtbl -> put_Step(This,Val)

#define ICurveCopyObjectParam_get_Step(This,PVal)	\
    (This)->lpVtbl -> get_Step(This,PVal)

#define ICurveCopyObjectParam_put_Count(This,Val)	\
    (This)->lpVtbl -> put_Count(This,Val)

#define ICurveCopyObjectParam_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)

#define ICurveCopyObjectParam_put_TurnToNormal(This,Val)	\
    (This)->lpVtbl -> put_TurnToNormal(This,Val)

#define ICurveCopyObjectParam_get_TurnToNormal(This,PVal)	\
    (This)->lpVtbl -> get_TurnToNormal(This,PVal)

#define ICurveCopyObjectParam_put_PositiveDirection(This,Val)	\
    (This)->lpVtbl -> put_PositiveDirection(This,Val)

#define ICurveCopyObjectParam_get_PositiveDirection(This,PVal)	\
    (This)->lpVtbl -> get_PositiveDirection(This,PVal)

#define ICurveCopyObjectParam_put_StepFactor(This,Val)	\
    (This)->lpVtbl -> put_StepFactor(This,Val)

#define ICurveCopyObjectParam_get_StepFactor(This,PVal)	\
    (This)->lpVtbl -> get_StepFactor(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_put_BaseCurve_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [in] */ IDrawingObject __RPC_FAR *Curve);


void __RPC_STUB ICurveCopyObjectParam_put_BaseCurve_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_get_BaseCurve_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ IDrawingObject __RPC_FAR *__RPC_FAR *Curve);


void __RPC_STUB ICurveCopyObjectParam_get_BaseCurve_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_put_Step_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICurveCopyObjectParam_put_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_get_Step_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICurveCopyObjectParam_get_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_put_Count_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ICurveCopyObjectParam_put_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_get_Count_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ICurveCopyObjectParam_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_put_TurnToNormal_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICurveCopyObjectParam_put_TurnToNormal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_get_TurnToNormal_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveCopyObjectParam_get_TurnToNormal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_put_PositiveDirection_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICurveCopyObjectParam_put_PositiveDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_get_PositiveDirection_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveCopyObjectParam_get_PositiveDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_put_StepFactor_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICurveCopyObjectParam_put_StepFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICurveCopyObjectParam_get_StepFactor_Proxy( 
    ICurveCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICurveCopyObjectParam_get_StepFactor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICurveCopyObjectParam_INTERFACE_DEFINED__ */


#ifndef __ICircleCopyObjectParam_INTERFACE_DEFINED__
#define __ICircleCopyObjectParam_INTERFACE_DEFINED__

/* interface ICircleCopyObjectParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICircleCopyObjectParam,0x138D1202,0xCA46,0x4db3,0xBF,0x2B,0x85,0xD2,0x60,0xE4,0x43,0x55);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("138D1202-CA46-4db3-BF2B-85D260E44355")
    ICircleCopyObjectParam : public ICopyObjectParam
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Xc( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Xc( 
            /* [retval][out] */ double __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Yc( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Yc( 
            /* [retval][out] */ double __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ByStep( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ByStep( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PositiveDirection( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PositiveDirection( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICircleCopyObjectParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICircleCopyObjectParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICircleCopyObjectParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XOld )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XOld )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YOld )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YOld )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XNew )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XNew )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YNew )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YNew )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeCopy )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeCopy )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecificationObjectCopy )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationObjectCopy )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Xc )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Xc )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Yc )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Yc )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ByStep )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ByStep )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_PositiveDirection )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_PositiveDirection )( 
            ICircleCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICircleCopyObjectParamVtbl;

    interface ICircleCopyObjectParam
    {
        CONST_VTBL struct ICircleCopyObjectParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICircleCopyObjectParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICircleCopyObjectParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICircleCopyObjectParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICircleCopyObjectParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICircleCopyObjectParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICircleCopyObjectParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICircleCopyObjectParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICircleCopyObjectParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICircleCopyObjectParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICircleCopyObjectParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICircleCopyObjectParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICircleCopyObjectParam_put_XOld(This,Val)	\
    (This)->lpVtbl -> put_XOld(This,Val)

#define ICircleCopyObjectParam_get_XOld(This,PVal)	\
    (This)->lpVtbl -> get_XOld(This,PVal)

#define ICircleCopyObjectParam_put_YOld(This,Val)	\
    (This)->lpVtbl -> put_YOld(This,Val)

#define ICircleCopyObjectParam_get_YOld(This,PVal)	\
    (This)->lpVtbl -> get_YOld(This,PVal)

#define ICircleCopyObjectParam_put_XNew(This,Val)	\
    (This)->lpVtbl -> put_XNew(This,Val)

#define ICircleCopyObjectParam_get_XNew(This,PVal)	\
    (This)->lpVtbl -> get_XNew(This,PVal)

#define ICircleCopyObjectParam_put_YNew(This,Val)	\
    (This)->lpVtbl -> put_YNew(This,Val)

#define ICircleCopyObjectParam_get_YNew(This,PVal)	\
    (This)->lpVtbl -> get_YNew(This,PVal)

#define ICircleCopyObjectParam_put_Scale(This,Val)	\
    (This)->lpVtbl -> put_Scale(This,Val)

#define ICircleCopyObjectParam_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define ICircleCopyObjectParam_put_Angle(This,Val)	\
    (This)->lpVtbl -> put_Angle(This,Val)

#define ICircleCopyObjectParam_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ICircleCopyObjectParam_put_AttributeCopy(This,Val)	\
    (This)->lpVtbl -> put_AttributeCopy(This,Val)

#define ICircleCopyObjectParam_get_AttributeCopy(This,PVal)	\
    (This)->lpVtbl -> get_AttributeCopy(This,PVal)

#define ICircleCopyObjectParam_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define ICircleCopyObjectParam_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define ICircleCopyObjectParam_put_SpecificationObjectCopy(This,Val)	\
    (This)->lpVtbl -> put_SpecificationObjectCopy(This,Val)

#define ICircleCopyObjectParam_get_SpecificationObjectCopy(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationObjectCopy(This,PVal)


#define ICircleCopyObjectParam_put_Xc(This,Val)	\
    (This)->lpVtbl -> put_Xc(This,Val)

#define ICircleCopyObjectParam_get_Xc(This,Val)	\
    (This)->lpVtbl -> get_Xc(This,Val)

#define ICircleCopyObjectParam_put_Yc(This,Val)	\
    (This)->lpVtbl -> put_Yc(This,Val)

#define ICircleCopyObjectParam_get_Yc(This,Val)	\
    (This)->lpVtbl -> get_Yc(This,Val)

#define ICircleCopyObjectParam_put_Step(This,Val)	\
    (This)->lpVtbl -> put_Step(This,Val)

#define ICircleCopyObjectParam_get_Step(This,PVal)	\
    (This)->lpVtbl -> get_Step(This,PVal)

#define ICircleCopyObjectParam_put_Count(This,Val)	\
    (This)->lpVtbl -> put_Count(This,Val)

#define ICircleCopyObjectParam_get_Count(This,PVal)	\
    (This)->lpVtbl -> get_Count(This,PVal)

#define ICircleCopyObjectParam_put_ByStep(This,Val)	\
    (This)->lpVtbl -> put_ByStep(This,Val)

#define ICircleCopyObjectParam_get_ByStep(This,PVal)	\
    (This)->lpVtbl -> get_ByStep(This,PVal)

#define ICircleCopyObjectParam_put_PositiveDirection(This,Val)	\
    (This)->lpVtbl -> put_PositiveDirection(This,Val)

#define ICircleCopyObjectParam_get_PositiveDirection(This,PVal)	\
    (This)->lpVtbl -> get_PositiveDirection(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_put_Xc_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircleCopyObjectParam_put_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_get_Xc_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Val);


void __RPC_STUB ICircleCopyObjectParam_get_Xc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_put_Yc_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircleCopyObjectParam_put_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_get_Yc_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Val);


void __RPC_STUB ICircleCopyObjectParam_get_Yc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_put_Step_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircleCopyObjectParam_put_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_get_Step_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircleCopyObjectParam_get_Step_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_put_Count_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ICircleCopyObjectParam_put_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_get_Count_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ICircleCopyObjectParam_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_put_ByStep_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICircleCopyObjectParam_put_ByStep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_get_ByStep_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircleCopyObjectParam_get_ByStep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_put_PositiveDirection_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICircleCopyObjectParam_put_PositiveDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircleCopyObjectParam_get_PositiveDirection_Proxy( 
    ICircleCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircleCopyObjectParam_get_PositiveDirection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICircleCopyObjectParam_INTERFACE_DEFINED__ */


#ifndef __IPaintObject_INTERFACE_DEFINED__
#define __IPaintObject_INTERFACE_DEFINED__

/* interface IPaintObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPaintObject,0x4D14726D,0x0EC2,0x49ce,0xB0,0x2C,0xFE,0xDA,0xA6,0xD6,0x5B,0xBD);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4D14726D-0EC2-49ce-B02C-FEDAA6D65BBD")
    IPaintObject : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetHWND( 
            /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *HWnd) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetTransformMatrix( 
            /* [out] */ double __RPC_FAR *A11,
            /* [out] */ double __RPC_FAR *A12,
            /* [out] */ double __RPC_FAR *A13,
            /* [out] */ double __RPC_FAR *A14,
            /* [out] */ double __RPC_FAR *A21,
            /* [out] */ double __RPC_FAR *A22,
            /* [out] */ double __RPC_FAR *A23,
            /* [out] */ double __RPC_FAR *A24) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDIBForOutput( 
            /* [retval][out] */ BSTR __RPC_FAR *MapFileName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPaintObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPaintObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPaintObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPaintObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPaintObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPaintObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPaintObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPaintObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHWND )( 
            IPaintObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *HWnd);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTransformMatrix )( 
            IPaintObject __RPC_FAR * This,
            /* [out] */ double __RPC_FAR *A11,
            /* [out] */ double __RPC_FAR *A12,
            /* [out] */ double __RPC_FAR *A13,
            /* [out] */ double __RPC_FAR *A14,
            /* [out] */ double __RPC_FAR *A21,
            /* [out] */ double __RPC_FAR *A22,
            /* [out] */ double __RPC_FAR *A23,
            /* [out] */ double __RPC_FAR *A24);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDIBForOutput )( 
            IPaintObject __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *MapFileName);
        
        END_INTERFACE
    } IPaintObjectVtbl;

    interface IPaintObject
    {
        CONST_VTBL struct IPaintObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPaintObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPaintObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPaintObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPaintObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPaintObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPaintObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPaintObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPaintObject_GetHWND(This,HWnd)	\
    (This)->lpVtbl -> GetHWND(This,HWnd)

#define IPaintObject_GetTransformMatrix(This,A11,A12,A13,A14,A21,A22,A23,A24)	\
    (This)->lpVtbl -> GetTransformMatrix(This,A11,A12,A13,A14,A21,A22,A23,A24)

#define IPaintObject_GetDIBForOutput(This,MapFileName)	\
    (This)->lpVtbl -> GetDIBForOutput(This,MapFileName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPaintObject_GetHWND_Proxy( 
    IPaintObject __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ OLE_HANDLE __RPC_FAR *HWnd);


void __RPC_STUB IPaintObject_GetHWND_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPaintObject_GetTransformMatrix_Proxy( 
    IPaintObject __RPC_FAR * This,
    /* [out] */ double __RPC_FAR *A11,
    /* [out] */ double __RPC_FAR *A12,
    /* [out] */ double __RPC_FAR *A13,
    /* [out] */ double __RPC_FAR *A14,
    /* [out] */ double __RPC_FAR *A21,
    /* [out] */ double __RPC_FAR *A22,
    /* [out] */ double __RPC_FAR *A23,
    /* [out] */ double __RPC_FAR *A24);


void __RPC_STUB IPaintObject_GetTransformMatrix_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPaintObject_GetDIBForOutput_Proxy( 
    IPaintObject __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *MapFileName);


void __RPC_STUB IPaintObject_GetDIBForOutput_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPaintObject_INTERFACE_DEFINED__ */


#ifndef __IGabaritObject_INTERFACE_DEFINED__
#define __IGabaritObject_INTERFACE_DEFINED__

/* interface IGabaritObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IGabaritObject,0xB6674824,0xCD9D,0x4220,0xB2,0xCB,0x9F,0x93,0x9A,0x9C,0x35,0xC8);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B6674824-CD9D-4220-B2CB-9F939A9C35C8")
    IGabaritObject : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCurrentGabarit( 
            /* [in] */ long NPage,
            /* [out] */ double __RPC_FAR *P1X,
            /* [out] */ double __RPC_FAR *P1Y,
            /* [out] */ double __RPC_FAR *P1Z,
            /* [out] */ double __RPC_FAR *P2X,
            /* [out] */ double __RPC_FAR *P2Y,
            /* [out] */ double __RPC_FAR *P2Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddGabarit( 
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double Z1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [in] */ double Z2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGabaritModifying( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *DocGabaritModify) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGabaritObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IGabaritObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IGabaritObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IGabaritObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IGabaritObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IGabaritObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IGabaritObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IGabaritObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCurrentGabarit )( 
            IGabaritObject __RPC_FAR * This,
            /* [in] */ long NPage,
            /* [out] */ double __RPC_FAR *P1X,
            /* [out] */ double __RPC_FAR *P1Y,
            /* [out] */ double __RPC_FAR *P1Z,
            /* [out] */ double __RPC_FAR *P2X,
            /* [out] */ double __RPC_FAR *P2Y,
            /* [out] */ double __RPC_FAR *P2Z,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddGabarit )( 
            IGabaritObject __RPC_FAR * This,
            /* [in] */ double X1,
            /* [in] */ double Y1,
            /* [in] */ double Z1,
            /* [in] */ double X2,
            /* [in] */ double Y2,
            /* [in] */ double Z2,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetGabaritModifying )( 
            IGabaritObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *DocGabaritModify);
        
        END_INTERFACE
    } IGabaritObjectVtbl;

    interface IGabaritObject
    {
        CONST_VTBL struct IGabaritObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IGabaritObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IGabaritObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IGabaritObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IGabaritObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IGabaritObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IGabaritObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IGabaritObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IGabaritObject_GetCurrentGabarit(This,NPage,P1X,P1Y,P1Z,P2X,P2Y,P2Z,PVal)	\
    (This)->lpVtbl -> GetCurrentGabarit(This,NPage,P1X,P1Y,P1Z,P2X,P2Y,P2Z,PVal)

#define IGabaritObject_AddGabarit(This,X1,Y1,Z1,X2,Y2,Z2,PVal)	\
    (This)->lpVtbl -> AddGabarit(This,X1,Y1,Z1,X2,Y2,Z2,PVal)

#define IGabaritObject_GetGabaritModifying(This,DocGabaritModify)	\
    (This)->lpVtbl -> GetGabaritModifying(This,DocGabaritModify)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IGabaritObject_GetCurrentGabarit_Proxy( 
    IGabaritObject __RPC_FAR * This,
    /* [in] */ long NPage,
    /* [out] */ double __RPC_FAR *P1X,
    /* [out] */ double __RPC_FAR *P1Y,
    /* [out] */ double __RPC_FAR *P1Z,
    /* [out] */ double __RPC_FAR *P2X,
    /* [out] */ double __RPC_FAR *P2Y,
    /* [out] */ double __RPC_FAR *P2Z,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IGabaritObject_GetCurrentGabarit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IGabaritObject_AddGabarit_Proxy( 
    IGabaritObject __RPC_FAR * This,
    /* [in] */ double X1,
    /* [in] */ double Y1,
    /* [in] */ double Z1,
    /* [in] */ double X2,
    /* [in] */ double Y2,
    /* [in] */ double Z2,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IGabaritObject_AddGabarit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IGabaritObject_GetGabaritModifying_Proxy( 
    IGabaritObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *DocGabaritModify);


void __RPC_STUB IGabaritObject_GetGabaritModifying_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IGabaritObject_INTERFACE_DEFINED__ */


#ifndef __ksGLObject_DISPINTERFACE_DEFINED__
#define __ksGLObject_DISPINTERFACE_DEFINED__

/* dispinterface ksGLObject */
/* [helpcontext][helpstring][uuid] */ 


DEFINE_GUID(DIID_ksGLObject,0xB1C65023,0xB908,0x4cad,0x92,0x38,0xC5,0x02,0x65,0x20,0xE6,0x2C);

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("B1C65023-B908-4cad-9238-C5026520E62C")
    ksGLObject : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct ksGLObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ksGLObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ksGLObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ksGLObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ksGLObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ksGLObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ksGLObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ksGLObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } ksGLObjectVtbl;

    interface ksGLObject
    {
        CONST_VTBL struct ksGLObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ksGLObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ksGLObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ksGLObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ksGLObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ksGLObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ksGLObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ksGLObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* __ksGLObject_DISPINTERFACE_DEFINED__ */


#ifndef __IExternalTessellationObject_INTERFACE_DEFINED__
#define __IExternalTessellationObject_INTERFACE_DEFINED__

/* interface IExternalTessellationObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IExternalTessellationObject,0x9D5CDE37,0x7833,0x4359,0xB2,0x5A,0xFE,0x70,0x11,0xEA,0x77,0x1A);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9D5CDE37-7833-4359-B25A-FE7011EA771A")
    IExternalTessellationObject : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectID( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTessellation( 
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Indexes,
            /* [in] */ VARIANT Normals,
            /* [in] */ VARIANT Colors,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ IDocumentFrame __RPC_FAR *Frame,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAdvancedColor( 
            /* [in] */ long Color,
            /* [in] */ double Ambient,
            /* [in] */ double Diffuse,
            /* [in] */ double Specularity,
            /* [in] */ double Shininess,
            /* [in] */ double Transparency,
            /* [in] */ double Emission,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetEdges( 
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Edges,
            /* [in] */ VARIANT Colors,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPlaces( 
            /* [in] */ VARIANT Places,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetEdgeStyles( 
            /* [in] */ VARIANT Styles,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetEdgeWidths( 
            /* [in] */ VARIANT Widths,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTextureImage( 
            /* [in] */ long Width,
            /* [in] */ long Heigh,
            /* [in] */ VARIANT_BOOL RGBA,
            /* [in] */ VARIANT_BOOL WrapMode,
            /* [in] */ VARIANT_BOOL FiltMode,
            /* [in] */ VARIANT ImageData,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTexturePoints( 
            /* [in] */ VARIANT_BOOL Image2D,
            /* [in] */ VARIANT ImagePoints,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetFacetMode( 
            /* [in] */ VARIANT_BOOL SideMode,
            /* [in] */ /* external definition not present */ ksFacetCullingMode CullingMode,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExternalTessellationObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IExternalTessellationObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IExternalTessellationObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectID )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTessellation )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Indexes,
            /* [in] */ VARIANT Normals,
            /* [in] */ VARIANT Colors,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ IDocumentFrame __RPC_FAR *Frame,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetAdvancedColor )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ long Color,
            /* [in] */ double Ambient,
            /* [in] */ double Diffuse,
            /* [in] */ double Specularity,
            /* [in] */ double Shininess,
            /* [in] */ double Transparency,
            /* [in] */ double Emission,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetEdges )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Edges,
            /* [in] */ VARIANT Colors,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetPlaces )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT Places,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetEdgeStyles )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT Styles,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetEdgeWidths )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT Widths,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTextureImage )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ long Width,
            /* [in] */ long Heigh,
            /* [in] */ VARIANT_BOOL RGBA,
            /* [in] */ VARIANT_BOOL WrapMode,
            /* [in] */ VARIANT_BOOL FiltMode,
            /* [in] */ VARIANT ImageData,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTexturePoints )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Image2D,
            /* [in] */ VARIANT ImagePoints,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetFacetMode )( 
            IExternalTessellationObject __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL SideMode,
            /* [in] */ /* external definition not present */ ksFacetCullingMode CullingMode,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        END_INTERFACE
    } IExternalTessellationObjectVtbl;

    interface IExternalTessellationObject
    {
        CONST_VTBL struct IExternalTessellationObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExternalTessellationObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExternalTessellationObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExternalTessellationObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExternalTessellationObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExternalTessellationObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExternalTessellationObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExternalTessellationObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExternalTessellationObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IExternalTessellationObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IExternalTessellationObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IExternalTessellationObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IExternalTessellationObject_get_ObjectID(This,PVal)	\
    (This)->lpVtbl -> get_ObjectID(This,PVal)

#define IExternalTessellationObject_SetTessellation(This,Points,Indexes,Normals,Colors,Res)	\
    (This)->lpVtbl -> SetTessellation(This,Points,Indexes,Normals,Colors,Res)

#define IExternalTessellationObject_put_Visible(This,Frame,Visible)	\
    (This)->lpVtbl -> put_Visible(This,Frame,Visible)

#define IExternalTessellationObject_Delete(This,Result)	\
    (This)->lpVtbl -> Delete(This,Result)

#define IExternalTessellationObject_SetAdvancedColor(This,Color,Ambient,Diffuse,Specularity,Shininess,Transparency,Emission,Result)	\
    (This)->lpVtbl -> SetAdvancedColor(This,Color,Ambient,Diffuse,Specularity,Shininess,Transparency,Emission,Result)

#define IExternalTessellationObject_SetEdges(This,Points,Edges,Colors,Res)	\
    (This)->lpVtbl -> SetEdges(This,Points,Edges,Colors,Res)

#define IExternalTessellationObject_SetPlaces(This,Places,Res)	\
    (This)->lpVtbl -> SetPlaces(This,Places,Res)

#define IExternalTessellationObject_SetEdgeStyles(This,Styles,Res)	\
    (This)->lpVtbl -> SetEdgeStyles(This,Styles,Res)

#define IExternalTessellationObject_SetEdgeWidths(This,Widths,Res)	\
    (This)->lpVtbl -> SetEdgeWidths(This,Widths,Res)

#define IExternalTessellationObject_SetTextureImage(This,Width,Heigh,RGBA,WrapMode,FiltMode,ImageData,Res)	\
    (This)->lpVtbl -> SetTextureImage(This,Width,Heigh,RGBA,WrapMode,FiltMode,ImageData,Res)

#define IExternalTessellationObject_SetTexturePoints(This,Image2D,ImagePoints,Res)	\
    (This)->lpVtbl -> SetTexturePoints(This,Image2D,ImagePoints,Res)

#define IExternalTessellationObject_SetFacetMode(This,SideMode,CullingMode,Res)	\
    (This)->lpVtbl -> SetFacetMode(This,SideMode,CullingMode,Res)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_get_ObjectID_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IExternalTessellationObject_get_ObjectID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetTessellation_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Indexes,
    /* [in] */ VARIANT Normals,
    /* [in] */ VARIANT Colors,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetTessellation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_put_Visible_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ IDocumentFrame __RPC_FAR *Frame,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible);


void __RPC_STUB IExternalTessellationObject_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_Delete_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IExternalTessellationObject_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetAdvancedColor_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ long Color,
    /* [in] */ double Ambient,
    /* [in] */ double Diffuse,
    /* [in] */ double Specularity,
    /* [in] */ double Shininess,
    /* [in] */ double Transparency,
    /* [in] */ double Emission,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IExternalTessellationObject_SetAdvancedColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetEdges_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Edges,
    /* [in] */ VARIANT Colors,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetEdges_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetPlaces_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT Places,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetPlaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetEdgeStyles_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT Styles,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetEdgeStyles_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetEdgeWidths_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT Widths,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetEdgeWidths_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetTextureImage_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ long Width,
    /* [in] */ long Heigh,
    /* [in] */ VARIANT_BOOL RGBA,
    /* [in] */ VARIANT_BOOL WrapMode,
    /* [in] */ VARIANT_BOOL FiltMode,
    /* [in] */ VARIANT ImageData,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetTextureImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetTexturePoints_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Image2D,
    /* [in] */ VARIANT ImagePoints,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetTexturePoints_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationObject_SetFacetMode_Proxy( 
    IExternalTessellationObject __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL SideMode,
    /* [in] */ /* external definition not present */ ksFacetCullingMode CullingMode,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalTessellationObject_SetFacetMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExternalTessellationObject_INTERFACE_DEFINED__ */


#ifndef __IExternalTessellationManager_INTERFACE_DEFINED__
#define __IExternalTessellationManager_INTERFACE_DEFINED__

/* interface IExternalTessellationManager */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IExternalTessellationManager,0xDC21F3D3,0xFFA6,0x4274,0xA9,0x76,0x79,0xF3,0x47,0x29,0xB8,0x66);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DC21F3D3-FFA6-4274-A976-79F34729B866")
    IExternalTessellationManager : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [retval][out] */ IExternalTessellationObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TessellationObject( 
            /* [in] */ long Id,
            /* [retval][out] */ IExternalTessellationObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ObjectsVisible( 
            /* [in] */ VARIANT Ids,
            /* [in] */ IDocumentFrame __RPC_FAR *frame,
            /* [in] */ VARIANT_BOOL Visible) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE DeleteObjects( 
            /* [in] */ VARIANT Id,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddGDIObject( 
            /* [retval][out] */ IExternalGDIObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_GDIObject( 
            /* [in] */ long Id,
            /* [retval][out] */ IExternalGDIObject __RPC_FAR *__RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExternalTessellationManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IExternalTessellationManager __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IExternalTessellationManager __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [retval][out] */ IExternalTessellationObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TessellationObject )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ long Id,
            /* [retval][out] */ IExternalTessellationObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ObjectsVisible )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ VARIANT Ids,
            /* [in] */ IDocumentFrame __RPC_FAR *frame,
            /* [in] */ VARIANT_BOOL Visible);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteObjects )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ VARIANT Id,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddGDIObject )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [retval][out] */ IExternalGDIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_GDIObject )( 
            IExternalTessellationManager __RPC_FAR * This,
            /* [in] */ long Id,
            /* [retval][out] */ IExternalGDIObject __RPC_FAR *__RPC_FAR *PVal);
        
        END_INTERFACE
    } IExternalTessellationManagerVtbl;

    interface IExternalTessellationManager
    {
        CONST_VTBL struct IExternalTessellationManagerVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExternalTessellationManager_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExternalTessellationManager_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExternalTessellationManager_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExternalTessellationManager_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExternalTessellationManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExternalTessellationManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExternalTessellationManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExternalTessellationManager_Add(This,PVal)	\
    (This)->lpVtbl -> Add(This,PVal)

#define IExternalTessellationManager_get_TessellationObject(This,Id,PVal)	\
    (This)->lpVtbl -> get_TessellationObject(This,Id,PVal)

#define IExternalTessellationManager_put_ObjectsVisible(This,Ids,frame,Visible)	\
    (This)->lpVtbl -> put_ObjectsVisible(This,Ids,frame,Visible)

#define IExternalTessellationManager_DeleteObjects(This,Id,result)	\
    (This)->lpVtbl -> DeleteObjects(This,Id,result)

#define IExternalTessellationManager_Clear(This,result)	\
    (This)->lpVtbl -> Clear(This,result)

#define IExternalTessellationManager_AddGDIObject(This,PVal)	\
    (This)->lpVtbl -> AddGDIObject(This,PVal)

#define IExternalTessellationManager_get_GDIObject(This,Id,PVal)	\
    (This)->lpVtbl -> get_GDIObject(This,Id,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_Add_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [retval][out] */ IExternalTessellationObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IExternalTessellationManager_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_get_TessellationObject_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [in] */ long Id,
    /* [retval][out] */ IExternalTessellationObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IExternalTessellationManager_get_TessellationObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_put_ObjectsVisible_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [in] */ VARIANT Ids,
    /* [in] */ IDocumentFrame __RPC_FAR *frame,
    /* [in] */ VARIANT_BOOL Visible);


void __RPC_STUB IExternalTessellationManager_put_ObjectsVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_DeleteObjects_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [in] */ VARIANT Id,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB IExternalTessellationManager_DeleteObjects_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_Clear_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *result);


void __RPC_STUB IExternalTessellationManager_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_AddGDIObject_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [retval][out] */ IExternalGDIObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IExternalTessellationManager_AddGDIObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExternalTessellationManager_get_GDIObject_Proxy( 
    IExternalTessellationManager __RPC_FAR * This,
    /* [in] */ long Id,
    /* [retval][out] */ IExternalGDIObject __RPC_FAR *__RPC_FAR *PVal);


void __RPC_STUB IExternalTessellationManager_get_GDIObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExternalTessellationManager_INTERFACE_DEFINED__ */


#ifndef __IExternalGDIObject_INTERFACE_DEFINED__
#define __IExternalGDIObject_INTERFACE_DEFINED__

/* interface IExternalGDIObject */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IExternalGDIObject,0xC234E81D,0x4232,0x41fd,0x98,0x0D,0x8E,0x7E,0x6E,0xA7,0xB7,0x33);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C234E81D-4232-41fd-980D-8E7E6EA7B733")
    IExternalGDIObject : public IKompasAPIObject
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ObjectID( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetTexts( 
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Texts,
            /* [in] */ VARIANT Colors,
            /* [in] */ VARIANT Fonts,
            /* [in] */ VARIANT_BOOL Is3DPoints,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ IDocumentFrame __RPC_FAR *Frame,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible = TRUE) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Delete( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExternalGDIObjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IExternalGDIObject __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IExternalGDIObject __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ObjectID )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetTexts )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [in] */ VARIANT Points,
            /* [in] */ VARIANT Texts,
            /* [in] */ VARIANT Colors,
            /* [in] */ VARIANT Fonts,
            /* [in] */ VARIANT_BOOL Is3DPoints,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [in] */ IDocumentFrame __RPC_FAR *Frame,
            /* [defaultvalue][in] */ VARIANT_BOOL Visible);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )( 
            IExternalGDIObject __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);
        
        END_INTERFACE
    } IExternalGDIObjectVtbl;

    interface IExternalGDIObject
    {
        CONST_VTBL struct IExternalGDIObjectVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExternalGDIObject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExternalGDIObject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExternalGDIObject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExternalGDIObject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExternalGDIObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExternalGDIObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExternalGDIObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExternalGDIObject_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IExternalGDIObject_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IExternalGDIObject_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IExternalGDIObject_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IExternalGDIObject_get_ObjectID(This,PVal)	\
    (This)->lpVtbl -> get_ObjectID(This,PVal)

#define IExternalGDIObject_SetTexts(This,Points,Texts,Colors,Fonts,Is3DPoints,Res)	\
    (This)->lpVtbl -> SetTexts(This,Points,Texts,Colors,Fonts,Is3DPoints,Res)

#define IExternalGDIObject_put_Visible(This,Frame,Visible)	\
    (This)->lpVtbl -> put_Visible(This,Frame,Visible)

#define IExternalGDIObject_Delete(This,Result)	\
    (This)->lpVtbl -> Delete(This,Result)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IExternalGDIObject_get_ObjectID_Proxy( 
    IExternalGDIObject __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IExternalGDIObject_get_ObjectID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalGDIObject_SetTexts_Proxy( 
    IExternalGDIObject __RPC_FAR * This,
    /* [in] */ VARIANT Points,
    /* [in] */ VARIANT Texts,
    /* [in] */ VARIANT Colors,
    /* [in] */ VARIANT Fonts,
    /* [in] */ VARIANT_BOOL Is3DPoints,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Res);


void __RPC_STUB IExternalGDIObject_SetTexts_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IExternalGDIObject_put_Visible_Proxy( 
    IExternalGDIObject __RPC_FAR * This,
    /* [in] */ IDocumentFrame __RPC_FAR *Frame,
    /* [defaultvalue][in] */ VARIANT_BOOL Visible);


void __RPC_STUB IExternalGDIObject_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IExternalGDIObject_Delete_Proxy( 
    IExternalGDIObject __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Result);


void __RPC_STUB IExternalGDIObject_Delete_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExternalGDIObject_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_KompasDocument,0xDBBB268E,0x19D3,0x40de,0xB7,0x7C,0x98,0x7C,0xA1,0x5F,0xE7,0x11);

#ifdef __cplusplus

class DECLSPEC_UUID("DBBB268E-19D3-40de-B77C-987CA15FE711")
KompasDocument;
#endif

DEFINE_GUID(CLSID__Application,0x8C3719B5,0x0DF2,0x4C12,0x9C,0xA8,0x3A,0xF4,0x82,0x7A,0x3B,0xBB);

#ifdef __cplusplus

class DECLSPEC_UUID("8C3719B5-0DF2-4C12-9CA8-3AF4827A3BBB")
_Application;
#endif

DEFINE_GUID(CLSID_Documents,0x385647BD,0x89B1,0x4f2d,0xA0,0x6E,0x4D,0xD8,0x29,0xEE,0x09,0x6B);

#ifdef __cplusplus

class DECLSPEC_UUID("385647BD-89B1-4f2d-A06E-4DD829EE096B")
Documents;
#endif

DEFINE_GUID(CLSID_DocumentFrame,0x8BFFC9B4,0x5FE7,0x4ec5,0x8B,0xA5,0x0F,0xF8,0x52,0x0D,0x5F,0xF6);

#ifdef __cplusplus

class DECLSPEC_UUID("8BFFC9B4-5FE7-4ec5-8BA5-0FF8520D5FF6")
DocumentFrame;
#endif

DEFINE_GUID(CLSID_DocumentFrames,0xCC89942A,0x6FE5,0x4808,0x8D,0xC8,0xFF,0x46,0xD5,0x46,0xA8,0xEB);

#ifdef __cplusplus

class DECLSPEC_UUID("CC89942A-6FE5-4808-8DC8-FF46D546A8EB")
DocumentFrames;
#endif

DEFINE_GUID(CLSID_ProcessParam,0x4C33DE6E,0xFEAC,0x4c28,0x9E,0xE0,0x32,0xC3,0x7F,0x8E,0x7A,0x48);

#ifdef __cplusplus

class DECLSPEC_UUID("4C33DE6E-FEAC-4c28-9EE0-32C37F8E7A48")
ProcessParam;
#endif

DEFINE_GUID(CLSID_PropertyControls,0x74D54FDD,0x62D0,0x4544,0x89,0xC9,0x99,0x96,0x12,0xEF,0x6D,0xEF);

#ifdef __cplusplus

class DECLSPEC_UUID("74D54FDD-62D0-4544-89C9-999612EF6DEF")
PropertyControls;
#endif

DEFINE_GUID(CLSID_PropertyTab,0x1C2A5766,0xB80A,0x4752,0x85,0x09,0x21,0x75,0x74,0x96,0x5B,0xF3);

#ifdef __cplusplus

class DECLSPEC_UUID("1C2A5766-B80A-4752-8509-217574965BF3")
PropertyTab;
#endif

DEFINE_GUID(CLSID_PropertyTabs,0x52110F5F,0x7BF2,0x4079,0xB3,0xAE,0xA7,0xB7,0x16,0xA7,0xEB,0x1E);

#ifdef __cplusplus

class DECLSPEC_UUID("52110F5F-7BF2-4079-B3AE-A7B716A7EB1E")
PropertyTabs;
#endif

DEFINE_GUID(CLSID_PropertyEdit,0xE4AFCB78,0x574F,0x4960,0x9D,0x92,0xB2,0x38,0x88,0xD7,0x00,0xCD);

#ifdef __cplusplus

class DECLSPEC_UUID("E4AFCB78-574F-4960-9D92-B23888D700CD")
PropertyEdit;
#endif

DEFINE_GUID(CLSID_PropertySeparator,0x59DA09ED,0x130F,0x43af,0x86,0xB8,0xEA,0xC8,0xE0,0xC7,0xD0,0xA2);

#ifdef __cplusplus

class DECLSPEC_UUID("59DA09ED-130F-43af-86B8-EAC8E0C7D0A2")
PropertySeparator;
#endif

DEFINE_GUID(CLSID_PropertyList,0x404CF845,0x9BF6,0x4aad,0x97,0xA1,0xB9,0xA1,0x73,0xAC,0xF9,0x6D);

#ifdef __cplusplus

class DECLSPEC_UUID("404CF845-9BF6-4aad-97A1-B9A173ACF96D")
PropertyList;
#endif

DEFINE_GUID(CLSID_PropertyCheckBox,0x8CF06399,0xB7EB,0x46eb,0x8B,0x08,0x56,0x03,0xC5,0x89,0xFE,0x0F);

#ifdef __cplusplus

class DECLSPEC_UUID("8CF06399-B7EB-46eb-8B08-5603C589FE0F")
PropertyCheckBox;
#endif

DEFINE_GUID(CLSID_PropertyMultiButton,0xB734CA6E,0xCA21,0x4ccd,0xAE,0xE8,0x94,0xBC,0x8F,0x9D,0x49,0x86);

#ifdef __cplusplus

class DECLSPEC_UUID("B734CA6E-CA21-4ccd-AEE8-94BC8F9D4986")
PropertyMultiButton;
#endif

DEFINE_GUID(CLSID_PropertySlideBox,0x9988AC8D,0x657B,0x4b2a,0x83,0x38,0xEC,0x31,0x5C,0xBB,0xA7,0x0E);

#ifdef __cplusplus

class DECLSPEC_UUID("9988AC8D-657B-4b2a-8338-EC315CBBA70E")
PropertySlideBox;
#endif

DEFINE_GUID(CLSID_PropertyUserControl,0x725A98DC,0x9987,0x4a79,0xBD,0xA2,0xF5,0x02,0x4E,0x2D,0x0F,0xF3);

#ifdef __cplusplus

class DECLSPEC_UUID("725A98DC-9987-4a79-BDA2-F5024E2D0FF3")
PropertyUserControl;
#endif

DEFINE_GUID(CLSID_PropertyGrid,0xF0F9573F,0xBE07,0x4251,0x86,0xE5,0x2A,0xA2,0x4A,0xA3,0xD4,0x3A);

#ifdef __cplusplus

class DECLSPEC_UUID("F0F9573F-BE07-4251-86E5-2AA24AA3D43A")
PropertyGrid;
#endif

DEFINE_GUID(CLSID_PropertyManager,0x1B9CBAB1,0x99DA,0x433e,0x8D,0x4E,0x67,0x61,0xD1,0xAB,0x9B,0x8A);

#ifdef __cplusplus

class DECLSPEC_UUID("1B9CBAB1-99DA-433e-8D4E-6761D1AB9B8A")
PropertyManager;
#endif

DEFINE_GUID(CLSID_KompasDocument3D,0x9237AAFE,0x992B,0x4521,0xBF,0x68,0x3A,0x0C,0x6D,0x7F,0x77,0x69);

#ifdef __cplusplus

class DECLSPEC_UUID("9237AAFE-992B-4521-BF68-3A0C6D7F7769")
KompasDocument3D;
#endif

DEFINE_GUID(CLSID_DrawingDocument,0x5414B05F,0xA731,0x4369,0xBB,0xD2,0x41,0x9B,0x5C,0xD9,0xD2,0xA2);

#ifdef __cplusplus

class DECLSPEC_UUID("5414B05F-A731-4369-BBD2-419B5CD9D2A2")
DrawingDocument;
#endif

DEFINE_GUID(CLSID_FragmentDocument,0x86CA15DA,0xA197,0x4993,0xAB,0x98,0x89,0x21,0xD1,0x56,0x11,0x4E);

#ifdef __cplusplus

class DECLSPEC_UUID("86CA15DA-A197-4993-AB98-8921D156114E")
FragmentDocument;
#endif

DEFINE_GUID(CLSID_SpecificationDocument,0x2D43B764,0x4F8A,0x47a6,0xAA,0xAB,0x52,0xB5,0x9C,0xE5,0xA0,0x8D);

#ifdef __cplusplus

class DECLSPEC_UUID("2D43B764-4F8A-47a6-AAAB-52B59CE5A08D")
SpecificationDocument;
#endif

DEFINE_GUID(CLSID_TextDocument,0xF5CF81CF,0xF6C3,0x4d9c,0xB3,0x93,0x6D,0xF5,0x32,0xBF,0xB4,0x5D);

#ifdef __cplusplus

class DECLSPEC_UUID("F5CF81CF-F6C3-4d9c-B393-6DF532BFB45D")
TextDocument;
#endif

DEFINE_GUID(CLSID_PartDocument,0x427D2E6B,0x8D4E,0x4f9f,0x99,0xAC,0xF9,0xE0,0xFB,0x22,0xD2,0x5C);

#ifdef __cplusplus

class DECLSPEC_UUID("427D2E6B-8D4E-4f9f-99AC-F9E0FB22D25C")
PartDocument;
#endif

DEFINE_GUID(CLSID_AssemblyDocument,0x705B37C7,0xCA52,0x4588,0x98,0x0E,0x11,0x05,0xC9,0x19,0xE2,0x0C);

#ifdef __cplusplus

class DECLSPEC_UUID("705B37C7-CA52-4588-980E-1105C919E20C")
AssemblyDocument;
#endif

DEFINE_GUID(CLSID_PropertyTextButton,0xD4F68E4E,0x2092,0x436a,0xB6,0xFB,0xB8,0xA3,0x35,0xA6,0x71,0xFD);

#ifdef __cplusplus

class DECLSPEC_UUID("D4F68E4E-2092-436a-B6FB-B8A335A671FD")
PropertyTextButton;
#endif

DEFINE_GUID(CLSID_PropertySpinEdit,0xF4710743,0xA53B,0x4256,0xA4,0x50,0x16,0xD0,0xD4,0x0C,0x87,0xAA);

#ifdef __cplusplus

class DECLSPEC_UUID("F4710743-A53B-4256-A450-16D0D40C87AA")
PropertySpinEdit;
#endif

DEFINE_GUID(CLSID_ViewsAndLayersManager,0x2E3092B1,0x3B1A,0x4060,0xB2,0x02,0xB0,0xC6,0xF4,0x17,0x79,0x73);

#ifdef __cplusplus

class DECLSPEC_UUID("2E3092B1-3B1A-4060-B202-B0C6F4177973")
ViewsAndLayersManager;
#endif

DEFINE_GUID(CLSID_DrawingObject,0x3310AC4A,0xDC93,0x4ab5,0xB2,0xCD,0x53,0x91,0xE6,0xCB,0x37,0x0A);

#ifdef __cplusplus

class DECLSPEC_UUID("3310AC4A-DC93-4ab5-B2CD-5391E6CB370A")
DrawingObject;
#endif

DEFINE_GUID(CLSID_DrawingObjects,0x5F90A46E,0xEA28,0x4294,0xB3,0x4F,0x14,0x5C,0x80,0x14,0x15,0x17);

#ifdef __cplusplus

class DECLSPEC_UUID("5F90A46E-EA28-4294-B34F-145C80141517")
DrawingObjects;
#endif

DEFINE_GUID(CLSID_Views,0x675CDFC9,0x4ED8,0x4689,0x8A,0x15,0xBE,0x9C,0xC8,0x5C,0xFB,0xDC);

#ifdef __cplusplus

class DECLSPEC_UUID("675CDFC9-4ED8-4689-8A15-BE9CC85CFBDC")
Views;
#endif

DEFINE_GUID(CLSID_View,0xADBF03AF,0x24D4,0x4ca8,0xBF,0x0E,0x7F,0x6E,0x40,0x3D,0x4E,0x55);

#ifdef __cplusplus

class DECLSPEC_UUID("ADBF03AF-24D4-4ca8-BF0E-7F6E403D4E55")
View;
#endif

DEFINE_GUID(CLSID_AssociationView,0x9F144F3A,0xA296,0x46c6,0x99,0xC2,0x18,0x77,0xB8,0x3B,0x0E,0x63);

#ifdef __cplusplus

class DECLSPEC_UUID("9F144F3A-A296-46c6-99C2-1877B83B0E63")
AssociationView;
#endif

DEFINE_GUID(CLSID_LayerGroups,0xE53FFD4E,0x619D,0x4b9b,0x9C,0x34,0x9C,0x23,0x66,0x8E,0x6F,0x4A);

#ifdef __cplusplus

class DECLSPEC_UUID("E53FFD4E-619D-4b9b-9C34-9C23668E6F4A")
LayerGroups;
#endif

DEFINE_GUID(CLSID_LayerGroup,0x5543C50A,0xB56D,0x48af,0x87,0xC3,0x09,0xC1,0xB4,0x8C,0xBC,0x5A);

#ifdef __cplusplus

class DECLSPEC_UUID("5543C50A-B56D-48af-87C3-09C1B48CBC5A")
LayerGroup;
#endif

DEFINE_GUID(CLSID_Layers,0xC0402ED4,0xD1AB,0x4567,0xBE,0x4F,0xAF,0xD8,0x8A,0xF8,0x48,0xEC);

#ifdef __cplusplus

class DECLSPEC_UUID("C0402ED4-D1AB-4567-BE4F-AFD88AF848EC")
Layers;
#endif

DEFINE_GUID(CLSID_Layer,0x392916B8,0x171E,0x4229,0x9E,0x75,0x1D,0x51,0x4C,0x75,0xFB,0x17);

#ifdef __cplusplus

class DECLSPEC_UUID("392916B8-171E-4229-9E75-1D514C75FB17")
Layer;
#endif

DEFINE_GUID(CLSID_LayerFilterCondition,0x21D31870,0x5EBC,0x42ce,0x88,0x58,0xA3,0x08,0xE7,0xE4,0xB8,0xA4);

#ifdef __cplusplus

class DECLSPEC_UUID("21D31870-5EBC-42ce-8858-A308E7E4B8A4")
LayerFilterCondition;
#endif

DEFINE_GUID(CLSID_LayerFilterConditions,0x9F90DA69,0x2CA3,0x4c2e,0xAB,0x59,0x6B,0xB9,0xB0,0xE7,0xDF,0xB8);

#ifdef __cplusplus

class DECLSPEC_UUID("9F90DA69-2CA3-4c2e-AB59-6BB9B0E7DFB8")
LayerFilterConditions;
#endif

DEFINE_GUID(CLSID_DocumentSettings,0x64964B4C,0x5A02,0x41d8,0xB6,0xEC,0xF7,0xCF,0x62,0x75,0x64,0xE6);

#ifdef __cplusplus

class DECLSPEC_UUID("64964B4C-5A02-41d8-B6EC-F7CF627564E6")
DocumentSettings;
#endif

DEFINE_GUID(CLSID_Document2DSettings,0xEBB0EE6B,0x305C,0x4448,0x96,0x74,0x3F,0x50,0x72,0x60,0x6D,0x47);

#ifdef __cplusplus

class DECLSPEC_UUID("EBB0EE6B-305C-4448-9674-3F5072606D47")
Document2DSettings;
#endif

DEFINE_GUID(CLSID_LibraryManager,0xAACB5896,0x8918,0x43cb,0xA5,0xB4,0xF3,0xEA,0xF4,0x5B,0xCE,0xF7);

#ifdef __cplusplus

class DECLSPEC_UUID("AACB5896-8918-43cb-A5B4-F3EAF45BCEF7")
LibraryManager;
#endif

DEFINE_GUID(CLSID_ProceduresLibrary,0xE865B51E,0x8276,0x4f7e,0xA2,0x0B,0x50,0x9D,0xC2,0x56,0x79,0xB1);

#ifdef __cplusplus

class DECLSPEC_UUID("E865B51E-8276-4f7e-A20B-509DC25679B1")
ProceduresLibrary;
#endif

DEFINE_GUID(CLSID_Procedures,0x0EA0000E,0x9328,0x488d,0xB6,0x11,0x9F,0x72,0xEE,0xCC,0xD9,0x2D);

#ifdef __cplusplus

class DECLSPEC_UUID("0EA0000E-9328-488d-B611-9F72EECCD92D")
Procedures;
#endif

DEFINE_GUID(CLSID_Procedure,0x5D9929F6,0x3D65,0x4daf,0xB1,0x46,0xA8,0x5F,0xA9,0x8F,0x23,0x56);

#ifdef __cplusplus

class DECLSPEC_UUID("5D9929F6-3D65-4daf-B146-A85FA98F2356")
Procedure;
#endif

DEFINE_GUID(CLSID_InsertsLibrary,0x9A06D2A1,0xBCDE,0x4c43,0x88,0xA1,0x5A,0x49,0x14,0x69,0xBE,0x11);

#ifdef __cplusplus

class DECLSPEC_UUID("9A06D2A1-BCDE-4c43-88A1-5A491469BE11")
InsertsLibrary;
#endif

DEFINE_GUID(CLSID_Inserts,0xF8527798,0xEB6E,0x43c6,0xAE,0x05,0x6F,0xA9,0x64,0xCF,0xD9,0x6B);

#ifdef __cplusplus

class DECLSPEC_UUID("F8527798-EB6E-43c6-AE05-6FA964CFD96B")
Inserts;
#endif

DEFINE_GUID(CLSID_Insert,0x5D1BD639,0x051F,0x48c5,0xBC,0xA7,0x76,0x98,0xB4,0xD0,0x70,0xB4);

#ifdef __cplusplus

class DECLSPEC_UUID("5D1BD639-051F-48c5-BCA7-7698B4D070B4")
Insert;
#endif

DEFINE_GUID(CLSID_InsertsLibraries,0x6C64BD39,0x1613,0x4ad4,0xB5,0xBA,0xB6,0xF3,0x8D,0x32,0xE8,0x2C);

#ifdef __cplusplus

class DECLSPEC_UUID("6C64BD39-1613-4ad4-B5BA-B6F38D32E82C")
InsertsLibraries;
#endif

DEFINE_GUID(CLSID_ProceduresLibraries,0xDBC3AC55,0x2823,0x4661,0x97,0x40,0x54,0x84,0x3B,0xA7,0x2B,0x12);

#ifdef __cplusplus

class DECLSPEC_UUID("DBC3AC55-2823-4661-9740-54843BA72B12")
ProceduresLibraries;
#endif

DEFINE_GUID(CLSID_SpecificationDescriptions,0x77168B66,0x5A17,0x4694,0xAD,0xDF,0x84,0x8E,0x31,0x4E,0xE0,0xD1);

#ifdef __cplusplus

class DECLSPEC_UUID("77168B66-5A17-4694-ADDF-848E314EE0D1")
SpecificationDescriptions;
#endif

DEFINE_GUID(CLSID_SpecificationDescription,0xAD076943,0xBF97,0x4802,0x9D,0x4F,0xD2,0x8C,0x6C,0x41,0xE9,0x66);

#ifdef __cplusplus

class DECLSPEC_UUID("AD076943-BF97-4802-9D4F-D28C6C41E966")
SpecificationDescription;
#endif

DEFINE_GUID(CLSID_SpecificationStyle,0x7E9787DC,0x72ED,0x452d,0x8E,0xF5,0xFD,0x3D,0x21,0x25,0x97,0x12);

#ifdef __cplusplus

class DECLSPEC_UUID("7E9787DC-72ED-452d-8EF5-FD3D21259712")
SpecificationStyle;
#endif

DEFINE_GUID(CLSID_SpecificationColumnStyles,0xEC3F7C56,0x6A3B,0x45ac,0xBF,0x81,0x61,0x4B,0x7B,0x04,0x5B,0xAA);

#ifdef __cplusplus

class DECLSPEC_UUID("EC3F7C56-6A3B-45ac-BF81-614B7B045BAA")
SpecificationColumnStyles;
#endif

DEFINE_GUID(CLSID_SpecificationColumnStyle,0xFF5E4685,0x8914,0x4382,0x97,0xC9,0xC7,0x3F,0xFE,0xD7,0x34,0x49);

#ifdef __cplusplus

class DECLSPEC_UUID("FF5E4685-8914-4382-97C9-C73FFED73449")
SpecificationColumnStyle;
#endif

DEFINE_GUID(CLSID_SpecificationSectionStyles,0x25B2EDD7,0xFB95,0x4fe6,0xBA,0x9C,0xB2,0x96,0x53,0x1E,0xA6,0xC7);

#ifdef __cplusplus

class DECLSPEC_UUID("25B2EDD7-FB95-4fe6-BA9C-B296531EA6C7")
SpecificationSectionStyles;
#endif

DEFINE_GUID(CLSID_SpecificationSectionStyle,0xA862B550,0xCAED,0x48fd,0x88,0x9D,0xC1,0x50,0x7A,0x30,0xD2,0x41);

#ifdef __cplusplus

class DECLSPEC_UUID("A862B550-CAED-48fd-889D-C1507A30D241")
SpecificationSectionStyle;
#endif

DEFINE_GUID(CLSID_AdditionalBlockStyles,0x2A248D5E,0x8B8F,0x4f43,0x91,0xEC,0x10,0xC7,0xF0,0x2E,0x20,0x64);

#ifdef __cplusplus

class DECLSPEC_UUID("2A248D5E-8B8F-4f43-91EC-10C7F02E2064")
AdditionalBlockStyles;
#endif

DEFINE_GUID(CLSID_AdditionalBlockStyle,0x704BC0BD,0x189C,0x4b8b,0xA9,0x7A,0xAB,0x5F,0x0C,0x68,0x97,0xEF);

#ifdef __cplusplus

class DECLSPEC_UUID("704BC0BD-189C-4b8b-A97A-AB5F0C6897EF")
AdditionalBlockStyle;
#endif

DEFINE_GUID(CLSID_SheetFormat,0xB872A3A8,0xC21F,0x487b,0xA4,0x4D,0xB1,0x68,0x39,0x8E,0x01,0x4A);

#ifdef __cplusplus

class DECLSPEC_UUID("B872A3A8-C21F-487b-A44D-B168398E014A")
SheetFormat;
#endif

DEFINE_GUID(CLSID_SpecificationTuning,0xC6410109,0x2800,0x476b,0x82,0xEE,0x20,0x2C,0x76,0x6B,0x51,0x5D);

#ifdef __cplusplus

class DECLSPEC_UUID("C6410109-2800-476b-82EE-202C766B515D")
SpecificationTuning;
#endif

DEFINE_GUID(CLSID_SpecificationTuningSections,0xB64E5FBC,0x99D3,0x4cbf,0x98,0x9F,0x0F,0x83,0x2F,0x3C,0x7B,0x5F);

#ifdef __cplusplus

class DECLSPEC_UUID("B64E5FBC-99D3-4cbf-989F-0F832F3C7B5F")
SpecificationTuningSections;
#endif

DEFINE_GUID(CLSID_SpecificationTuningSection,0x03D146C9,0x35D2,0x4fbf,0xB0,0x51,0x05,0x37,0x11,0xFC,0xA5,0x1B);

#ifdef __cplusplus

class DECLSPEC_UUID("03D146C9-35D2-4fbf-B051-053711FCA51B")
SpecificationTuningSection;
#endif

DEFINE_GUID(CLSID_SpecificationSubsections,0x79130306,0x1FB8,0x49fd,0x85,0xD2,0xA6,0xC2,0x35,0xB9,0x16,0x38);

#ifdef __cplusplus

class DECLSPEC_UUID("79130306-1FB8-49fd-85D2-A6C235B91638")
SpecificationSubsections;
#endif

DEFINE_GUID(CLSID_SpecificationSubsection,0xC82A6A36,0xCF62,0x43ce,0xA1,0x80,0xFA,0x12,0x68,0xAE,0x01,0x16);

#ifdef __cplusplus

class DECLSPEC_UUID("C82A6A36-CF62-43ce-A180-FA1268AE0116")
SpecificationSubsection;
#endif

DEFINE_GUID(CLSID_AdditionalBlockTunings,0xB6CC6F97,0xB1F1,0x42cf,0xAD,0xC7,0x78,0x75,0xB0,0x6A,0x70,0x89);

#ifdef __cplusplus

class DECLSPEC_UUID("B6CC6F97-B1F1-42cf-ADC7-7875B06A7089")
AdditionalBlockTunings;
#endif

DEFINE_GUID(CLSID_AdditionalBlockTuning,0xD62780C1,0xEDD6,0x49b6,0xB6,0x19,0x04,0xE2,0x21,0x89,0xD2,0x88);

#ifdef __cplusplus

class DECLSPEC_UUID("D62780C1-EDD6-49b6-B619-04E22189D288")
AdditionalBlockTuning;
#endif

DEFINE_GUID(CLSID_AdditionalBlockSectionTunings,0x821A5929,0x98F3,0x4c67,0xBC,0x2C,0xD3,0xA8,0xA1,0x44,0x20,0x86);

#ifdef __cplusplus

class DECLSPEC_UUID("821A5929-98F3-4c67-BC2C-D3A8A1442086")
AdditionalBlockSectionTunings;
#endif

DEFINE_GUID(CLSID_AdditionalBlockSectionTuning,0x39BDE053,0x03AA,0x4b95,0x8E,0x25,0x5B,0x80,0x41,0xC7,0xBE,0x12);

#ifdef __cplusplus

class DECLSPEC_UUID("39BDE053-03AA-4b95-8E25-5B8041C7BE12")
AdditionalBlockSectionTuning;
#endif

DEFINE_GUID(CLSID_TextFont,0x7F52DDDE,0xFD30,0x40df,0x97,0xE9,0xB6,0x06,0xA0,0x05,0xFD,0x14);

#ifdef __cplusplus

class DECLSPEC_UUID("7F52DDDE-FD30-40df-97E9-B606A005FD14")
TextFont;
#endif

DEFINE_GUID(CLSID_TextStyle,0x92523524,0x1E11,0x4193,0xAD,0x5F,0xE2,0x38,0x15,0x55,0xDC,0xC6);

#ifdef __cplusplus

class DECLSPEC_UUID("92523524-1E11-4193-AD5F-E2381555DCC6")
TextStyle;
#endif

DEFINE_GUID(CLSID_Tabulators,0xC0D50C82,0x511E,0x4554,0x82,0x96,0xED,0xFF,0x2A,0xE6,0x6C,0x4C);

#ifdef __cplusplus

class DECLSPEC_UUID("C0D50C82-511E-4554-8296-EDFF2AE66C4C")
Tabulators;
#endif

DEFINE_GUID(CLSID_Tabulator,0xD65E21E0,0x4B98,0x401d,0x86,0xB5,0x71,0x2E,0x0A,0xA5,0x6C,0xEC);

#ifdef __cplusplus

class DECLSPEC_UUID("D65E21E0-4B98-401d-86B5-712E0AA56CEC")
Tabulator;
#endif

DEFINE_GUID(CLSID_KompasError,0xA5B4DB5F,0x0554,0x4d75,0x91,0x5B,0x3F,0x83,0x8F,0x18,0xC8,0x09);

#ifdef __cplusplus

class DECLSPEC_UUID("A5B4DB5F-0554-4d75-915B-3F838F18C809")
KompasError;
#endif

DEFINE_GUID(CLSID_SpecificationBaseObjects,0xE2FD0C57,0x3E8A,0x4ec2,0xA1,0xE9,0x7B,0xEB,0x75,0xE3,0xAB,0x7C);

#ifdef __cplusplus

class DECLSPEC_UUID("E2FD0C57-3E8A-4ec2-A1E9-7BEB75E3AB7C")
SpecificationBaseObjects;
#endif

DEFINE_GUID(CLSID_SpecificationCommentObjects,0x77CFDEBF,0x2DF0,0x4b67,0x88,0x25,0x78,0xDF,0x71,0x2A,0x04,0x97);

#ifdef __cplusplus

class DECLSPEC_UUID("77CFDEBF-2DF0-4b67-8825-78DF712A0497")
SpecificationCommentObjects;
#endif

DEFINE_GUID(CLSID_SpecificationObject,0x77A64147,0x06A5,0x4843,0x8C,0x6F,0xF0,0xE3,0x5F,0x0E,0xD9,0x51);

#ifdef __cplusplus

class DECLSPEC_UUID("77A64147-06A5-4843-8C6F-F0E35F0ED951")
SpecificationObject;
#endif

DEFINE_GUID(CLSID_SpecificationBaseObject,0x41FCDD59,0x6012,0x4e46,0x84,0xDC,0x04,0x93,0x46,0x83,0xB0,0x98);

#ifdef __cplusplus

class DECLSPEC_UUID("41FCDD59-6012-4e46-84DC-04934683B098")
SpecificationBaseObject;
#endif

DEFINE_GUID(CLSID_SpecificationCommentObject,0x6F0354E0,0x9AB0,0x47ac,0x80,0xE8,0x10,0xFB,0x48,0xC5,0x93,0x40);

#ifdef __cplusplus

class DECLSPEC_UUID("6F0354E0-9AB0-47ac-80E8-10FB48C59340")
SpecificationCommentObject;
#endif

DEFINE_GUID(CLSID_SpecificationColumns,0xA641E019,0x073F,0x49f5,0x97,0xBC,0xA9,0xD5,0xFF,0xB0,0x63,0xD8);

#ifdef __cplusplus

class DECLSPEC_UUID("A641E019-073F-49f5-97BC-A9D5FFB063D8")
SpecificationColumns;
#endif

DEFINE_GUID(CLSID_SpecificationColumn,0xB5216B74,0x0577,0x41d5,0x9B,0x62,0xC7,0x16,0x74,0xEC,0x93,0x30);

#ifdef __cplusplus

class DECLSPEC_UUID("B5216B74-0577-41d5-9B62-C71674EC9330")
SpecificationColumn;
#endif

DEFINE_GUID(CLSID_SpecificationColumnItems,0x86172CF0,0x0BED,0x46e0,0xB2,0xE1,0xDD,0x43,0xAB,0xF0,0x92,0x90);

#ifdef __cplusplus

class DECLSPEC_UUID("86172CF0-0BED-46e0-B2E1-DD43ABF09290")
SpecificationColumnItems;
#endif

DEFINE_GUID(CLSID_SpecificationColumnItem,0xD1A46669,0xAF0C,0x43ee,0xAC,0xB6,0xE7,0x65,0xD0,0x6B,0xED,0x4A);

#ifdef __cplusplus

class DECLSPEC_UUID("D1A46669-AF0C-43ee-ACB6-E765D06BED4A")
SpecificationColumnItem;
#endif

DEFINE_GUID(CLSID_AttachedDocuments,0x7E97523D,0xC412,0x4da4,0x9F,0xEC,0xE4,0x76,0x9E,0x88,0xB3,0x40);

#ifdef __cplusplus

class DECLSPEC_UUID("7E97523D-C412-4da4-9FEC-E4769E88B340")
AttachedDocuments;
#endif

DEFINE_GUID(CLSID_AttachedDocument,0x30251A40,0x34EA,0x4da6,0xA0,0xB0,0x66,0xE7,0xA5,0x56,0xA8,0x13);

#ifdef __cplusplus

class DECLSPEC_UUID("30251A40-34EA-4da6-A0B0-66E7A556A813")
AttachedDocument;
#endif

DEFINE_GUID(CLSID_PropertyFileName,0xBBB62BA6,0xAC05,0x4d05,0xBF,0xF2,0xBC,0x85,0x79,0xA2,0xC5,0xFC);

#ifdef __cplusplus

class DECLSPEC_UUID("BBB62BA6-AC05-4d05-BFF2-BC8579A2C5FC")
PropertyFileName;
#endif

DEFINE_GUID(CLSID_PropertyColor,0x77E6E019,0xA5A1,0x4318,0xB9,0x8E,0xCD,0x97,0x0D,0x24,0x8E,0xA0);

#ifdef __cplusplus

class DECLSPEC_UUID("77E6E019-A5A1-4318-B98E-CD970D248EA0")
PropertyColor;
#endif

DEFINE_GUID(CLSID_LayoutSheets,0x1EF17E36,0x3C4D,0x4c86,0xAD,0x1B,0x17,0xE7,0x44,0x07,0x5D,0xF8);

#ifdef __cplusplus

class DECLSPEC_UUID("1EF17E36-3C4D-4c86-AD1B-17E744075DF8")
LayoutSheets;
#endif

DEFINE_GUID(CLSID_LayoutSheet,0x5331E747,0x7833,0x4988,0x92,0xCA,0x90,0x28,0x31,0x60,0xDD,0xF6);

#ifdef __cplusplus

class DECLSPEC_UUID("5331E747-7833-4988-92CA-90283160DDF6")
LayoutSheet;
#endif

DEFINE_GUID(CLSID_Converter,0xA496A838,0x57F7,0x4bec,0x99,0xFF,0x51,0xD4,0x78,0x2C,0x60,0xAE);

#ifdef __cplusplus

class DECLSPEC_UUID("A496A838-57F7-4bec-99FF-51D4782C60AE")
Converter;
#endif

DEFINE_GUID(CLSID_CheckSum,0xD3154740,0x6BF5,0x47f6,0x9A,0x02,0x48,0x6F,0x78,0x19,0x07,0x91);

#ifdef __cplusplus

class DECLSPEC_UUID("D3154740-6BF5-47f6-9A02-486F78190791")
CheckSum;
#endif

DEFINE_GUID(CLSID_ModelObject,0xDB0070F0,0xC367,0x4db5,0xB7,0x22,0x9C,0xFE,0x69,0x89,0x56,0x57);

#ifdef __cplusplus

class DECLSPEC_UUID("DB0070F0-C367-4db5-B722-9CFE69895657")
ModelObject;
#endif

DEFINE_GUID(CLSID_ModelObjects,0xB0223EED,0x4659,0x4eac,0xBD,0xA2,0x20,0xB0,0xFD,0xD4,0xE7,0xB7);

#ifdef __cplusplus

class DECLSPEC_UUID("B0223EED-4659-4eac-BDA2-20B0FDD4E7B7")
ModelObjects;
#endif

DEFINE_GUID(CLSID_Parts7,0xCB826C3D,0x9968,0x4546,0xBC,0xD7,0xBA,0x65,0xF6,0xB8,0x49,0x02);

#ifdef __cplusplus

class DECLSPEC_UUID("CB826C3D-9968-4546-BCD7-BA65F6B84902")
Parts7;
#endif

DEFINE_GUID(CLSID_Part7,0x314057D1,0x5EFD,0x4980,0x8A,0xB8,0x4E,0x0C,0xC3,0xF7,0xE7,0x56);

#ifdef __cplusplus

class DECLSPEC_UUID("314057D1-5EFD-4980-8AB8-4E0CC3F7E756")
Part7;
#endif

DEFINE_GUID(CLSID_Sketchs,0x6F94D909,0xE9C7,0x4496,0x8F,0x5B,0x01,0xF0,0xB0,0x3F,0xF4,0x09);

#ifdef __cplusplus

class DECLSPEC_UUID("6F94D909-E9C7-4496-8F5B-01F0B03FF409")
Sketchs;
#endif

DEFINE_GUID(CLSID_Extrusions,0x2B4C99E4,0xFB5D,0x4d7d,0xA4,0x4D,0x5B,0x89,0x8E,0x1F,0x5E,0x9E);

#ifdef __cplusplus

class DECLSPEC_UUID("2B4C99E4-FB5D-4d7d-A44D-5B898E1F5E9E")
Extrusions;
#endif

DEFINE_GUID(CLSID_VariableTable,0xB49FD0E4,0x26AC,0x48de,0xAD,0x0E,0x7D,0xFA,0x90,0x2D,0xF2,0xB7);

#ifdef __cplusplus

class DECLSPEC_UUID("B49FD0E4-26AC-48de-AD0E-7DFA902DF2B7")
VariableTable;
#endif

DEFINE_GUID(CLSID_ProgressBarIndicator,0x9361276C,0x70A0,0x4000,0x82,0xD2,0x90,0xFB,0x54,0x6C,0x98,0xD4);

#ifdef __cplusplus

class DECLSPEC_UUID("9361276C-70A0-4000-82D2-90FB546C98D4")
ProgressBarIndicator;
#endif

DEFINE_GUID(CLSID_Text,0x393AB030,0xF683,0x470c,0x8F,0x4E,0xAA,0x93,0xBF,0x31,0x62,0xCC);

#ifdef __cplusplus

class DECLSPEC_UUID("393AB030-F683-470c-8F4E-AA93BF3162CC")
Text;
#endif

DEFINE_GUID(CLSID_TextLine,0xFDFD93BC,0x11C4,0x42a9,0x9C,0x8F,0xA4,0xFB,0x20,0x62,0x74,0xB6);

#ifdef __cplusplus

class DECLSPEC_UUID("FDFD93BC-11C4-42a9-9C8F-A4FB206274B6")
TextLine;
#endif

DEFINE_GUID(CLSID_TextItem,0x58CED17B,0x2AA8,0x4df8,0xB2,0x15,0x81,0x1D,0xDE,0x72,0xDF,0x3C);

#ifdef __cplusplus

class DECLSPEC_UUID("58CED17B-2AA8-4df8-B215-811DDE72DF3C")
TextItem;
#endif

DEFINE_GUID(CLSID_DrawingText,0x2E194B4E,0xF08D,0x4d62,0xA9,0xB8,0x84,0x90,0x04,0xD8,0xD9,0x23);

#ifdef __cplusplus

class DECLSPEC_UUID("2E194B4E-F08D-4d62-A9B8-849004D8D923")
DrawingText;
#endif

DEFINE_GUID(CLSID_DrawingTexts,0x5F4C3AA0,0x4B59,0x4eee,0xAB,0x00,0x53,0xCE,0xA8,0x90,0x9F,0x66);

#ifdef __cplusplus

class DECLSPEC_UUID("5F4C3AA0-4B59-4eee-AB00-53CEA8909F66")
DrawingTexts;
#endif

DEFINE_GUID(CLSID_Marks,0xC0DEA6BF,0x0AD5,0x4c55,0xAD,0x3D,0xA3,0xF1,0x45,0x94,0x3E,0x47);

#ifdef __cplusplus

class DECLSPEC_UUID("C0DEA6BF-0AD5-4c55-AD3D-A3F145943E47")
Marks;
#endif

DEFINE_GUID(CLSID_MarkInsideForm,0xCDABB418,0x649A,0x4ab9,0x8A,0x92,0xC5,0x17,0x89,0x07,0x59,0x12);

#ifdef __cplusplus

class DECLSPEC_UUID("CDABB418-649A-4ab9-8A92-C51789075912")
MarkInsideForm;
#endif

DEFINE_GUID(CLSID_MarkOnLine,0x84CAA3BB,0x3E7A,0x4185,0x82,0xBC,0x85,0xD4,0x10,0x2D,0x5D,0xEF);

#ifdef __cplusplus

class DECLSPEC_UUID("84CAA3BB-3E7A-4185-82BC-85D4102D5DEF")
MarkOnLine;
#endif

DEFINE_GUID(CLSID_MarkOnLeader,0xCF195C37,0xA915,0x48ca,0x9F,0x6B,0x6B,0x38,0x45,0xFE,0xD0,0x5B);

#ifdef __cplusplus

class DECLSPEC_UUID("CF195C37-A915-48ca-9F6B-6B3845FED05B")
MarkOnLeader;
#endif

DEFINE_GUID(CLSID_UserDataStoragesMng,0x13BCC1C9,0xC582,0x4616,0x89,0xEE,0x4C,0xD2,0x50,0x59,0x5C,0xC4);

#ifdef __cplusplus

class DECLSPEC_UUID("13BCC1C9-C582-4616-89EE-4CD250595CC4")
UserDataStoragesMng;
#endif

DEFINE_GUID(CLSID_UserDataStorages,0x1B57D1CF,0xCBEA,0x4dbc,0x94,0x52,0x50,0xE3,0x67,0x78,0x49,0x58);

#ifdef __cplusplus

class DECLSPEC_UUID("1B57D1CF-CBEA-4dbc-9452-50E367784958")
UserDataStorages;
#endif

DEFINE_GUID(CLSID_UserDataStorage,0x4C7C5A7E,0xAD2C,0x4b1f,0x82,0xB9,0x73,0x47,0x68,0x37,0xE0,0x20);

#ifdef __cplusplus

class DECLSPEC_UUID("4C7C5A7E-AD2C-4b1f-82B9-73476837E020")
UserDataStorage;
#endif

DEFINE_GUID(CLSID_BuildingAxes,0xB879C6F6,0x5AB0,0x4bee,0x88,0x72,0xFE,0x87,0xC6,0x21,0xF1,0x5B);

#ifdef __cplusplus

class DECLSPEC_UUID("B879C6F6-5AB0-4bee-8872-FE87C621F15B")
BuildingAxes;
#endif

DEFINE_GUID(CLSID_StraightAxis,0x04728D73,0xA533,0x4c98,0xB0,0xBF,0x92,0xA8,0xA0,0x2E,0x6F,0x4C);

#ifdef __cplusplus

class DECLSPEC_UUID("04728D73-A533-4c98-B0BF-92A8A02E6F4C")
StraightAxis;
#endif

DEFINE_GUID(CLSID_ArcAxis,0xAE2C24D6,0x17E4,0x4e5f,0xBA,0x2B,0xED,0x62,0xAC,0x23,0x23,0xEC);

#ifdef __cplusplus

class DECLSPEC_UUID("AE2C24D6-17E4-4e5f-BA2B-ED62AC2323EC")
ArcAxis;
#endif

DEFINE_GUID(CLSID_CircleAxis,0x8A706E75,0x73FF,0x4fbf,0x8D,0x3F,0x61,0xA1,0x35,0x13,0xC7,0xEB);

#ifdef __cplusplus

class DECLSPEC_UUID("8A706E75-73FF-4fbf-8D3F-61A13513C7EB")
CircleAxis;
#endif

DEFINE_GUID(CLSID_AxisJut,0x97559604,0x8CCC,0x44e4,0xB3,0x32,0x7E,0x16,0xC3,0x45,0x22,0xD5);

#ifdef __cplusplus

class DECLSPEC_UUID("97559604-8CCC-44e4-B332-7E16C34522D5")
AxisJut;
#endif

DEFINE_GUID(CLSID_MarkNodes,0x6681105E,0x35E0,0x4e76,0x9E,0x64,0x0A,0xB8,0xB5,0x0E,0x61,0x49);

#ifdef __cplusplus

class DECLSPEC_UUID("6681105E-35E0-4e76-9E64-0AB8B50E6149")
MarkNodes;
#endif

DEFINE_GUID(CLSID_MarkNode,0xB98EA663,0x66BC,0x46c0,0xA8,0x6C,0x1F,0xE4,0x0A,0xF8,0xA3,0xD8);

#ifdef __cplusplus

class DECLSPEC_UUID("B98EA663-66BC-46c0-A86C-1FE40AF8A3D8")
MarkNode;
#endif

DEFINE_GUID(CLSID_LineSegments,0xB7B673AF,0x5E78,0x45aa,0x8C,0x78,0x89,0x4D,0x1F,0x4F,0x77,0xAC);

#ifdef __cplusplus

class DECLSPEC_UUID("B7B673AF-5E78-45aa-8C78-894D1F4F77AC")
LineSegments;
#endif

DEFINE_GUID(CLSID_LineSegment,0xEE1993AD,0xCAC2,0x421c,0xB9,0xB1,0x13,0x1B,0xA1,0x64,0x66,0xCF);

#ifdef __cplusplus

class DECLSPEC_UUID("EE1993AD-CAC2-421c-B9B1-131BA16466CF")
LineSegment;
#endif

DEFINE_GUID(CLSID_SystemSettings,0x31C4845E,0x508F,0x43f0,0xA5,0x7F,0xE7,0x60,0x2A,0x0E,0x45,0xE6);

#ifdef __cplusplus

class DECLSPEC_UUID("31C4845E-508F-43f0-A57F-E7602A0E45E6")
SystemSettings;
#endif

DEFINE_GUID(CLSID_CutUnitMarking,0xBE66B386,0x7D76,0x4afc,0xAC,0x47,0x52,0x1B,0x66,0x48,0xCB,0x8F);

#ifdef __cplusplus

class DECLSPEC_UUID("BE66B386-7D76-4afc-AC47-521B6648CB8F")
CutUnitMarking;
#endif

DEFINE_GUID(CLSID_CutUnitMarkings,0xDDEFF219,0xE3BC,0x457f,0x87,0xFF,0x3C,0x3A,0xDC,0xFA,0x72,0x0E);

#ifdef __cplusplus

class DECLSPEC_UUID("DDEFF219-E3BC-457f-87FF-3C3ADCFA720E")
CutUnitMarkings;
#endif

DEFINE_GUID(CLSID_UnitMarking,0x82BE653C,0x832A,0x4611,0x94,0x1F,0xD2,0x7B,0xE7,0x33,0x53,0x0B);

#ifdef __cplusplus

class DECLSPEC_UUID("82BE653C-832A-4611-941F-D27BE733530B")
UnitMarking;
#endif

DEFINE_GUID(CLSID_UnitMarkings,0x2156B173,0xA854,0x4714,0xBE,0x90,0x6F,0x9A,0xDE,0x48,0xE2,0xAF);

#ifdef __cplusplus

class DECLSPEC_UUID("2156B173-A854-4714-BE90-6F9ADE48E2AF")
UnitMarkings;
#endif

DEFINE_GUID(CLSID_Arcs,0x307690EF,0x0E80,0x4cd1,0x93,0xE1,0x49,0x28,0x8C,0x56,0x97,0xA7);

#ifdef __cplusplus

class DECLSPEC_UUID("307690EF-0E80-4cd1-93E1-49288C5697A7")
Arcs;
#endif

DEFINE_GUID(CLSID__Arc,0x6BA18A3D,0x28A8,0x47c3,0xA9,0x7C,0xE3,0x24,0x28,0x2F,0x93,0xFD);

#ifdef __cplusplus

class DECLSPEC_UUID("6BA18A3D-28A8-47c3-A97C-E324282F93FD")
_Arc;
#endif

DEFINE_GUID(CLSID_MultiTextLeader,0x123D60BB,0x0331,0x4726,0x97,0x07,0x77,0x76,0x15,0xE9,0xD3,0x54);

#ifdef __cplusplus

class DECLSPEC_UUID("123D60BB-0331-4726-9707-777615E9D354")
MultiTextLeader;
#endif

DEFINE_GUID(CLSID_MultiTextLeaders,0xAF30B851,0x0AE8,0x4f62,0xB7,0xDB,0x1D,0xF5,0x2D,0x93,0x16,0xF2);

#ifdef __cplusplus

class DECLSPEC_UUID("AF30B851-0AE8-4f62-B7DB-1DF52D9316F2")
MultiTextLeaders;
#endif

DEFINE_GUID(CLSID_Brace,0x2DF7A8F9,0xCB3B,0x499e,0x86,0x7F,0x81,0xBA,0x5B,0x41,0xED,0x57);

#ifdef __cplusplus

class DECLSPEC_UUID("2DF7A8F9-CB3B-499e-867F-81BA5B41ED57")
Brace;
#endif

DEFINE_GUID(CLSID_Braces,0x82CD752F,0xBC4F,0x45a2,0x9F,0xE9,0x8A,0xB0,0x1F,0xDA,0xF6,0xC9);

#ifdef __cplusplus

class DECLSPEC_UUID("82CD752F-BC4F-45a2-9FE9-8AB01FDAF6C9")
Braces;
#endif

DEFINE_GUID(CLSID_UnitNumber,0x515C7A0D,0x0120,0x4cc4,0xA5,0xF0,0x67,0x47,0x3D,0x7D,0x95,0xD3);

#ifdef __cplusplus

class DECLSPEC_UUID("515C7A0D-0120-4cc4-A5F0-67473D7D95D3")
UnitNumber;
#endif

DEFINE_GUID(CLSID_UnitNumbers,0x624E4C7C,0x156C,0x4fd9,0x8D,0xA8,0xCE,0xB9,0x75,0x08,0x60,0xD1);

#ifdef __cplusplus

class DECLSPEC_UUID("624E4C7C-156C-4fd9-8DA8-CEB9750860D1")
UnitNumbers;
#endif

DEFINE_GUID(CLSID_Sketch,0xFC43EA04,0xADED,0x4d42,0x88,0x3A,0x11,0x07,0x3E,0x2E,0x68,0xEC);

#ifdef __cplusplus

class DECLSPEC_UUID("FC43EA04-ADED-4d42-883A-11073E2E68EC")
Sketch;
#endif

DEFINE_GUID(CLSID_Extrusion,0x9D3CAF4C,0x4D9D,0x40ec,0xBE,0x5A,0x12,0xA3,0xAC,0x59,0x50,0x07);

#ifdef __cplusplus

class DECLSPEC_UUID("9D3CAF4C-4D9D-40ec-BE5A-12A3AC595007")
Extrusion;
#endif

DEFINE_GUID(CLSID_ParametriticConstraint,0x7536F0BF,0x2857,0x4a01,0xAC,0xFA,0x5D,0xDF,0x1C,0x98,0x40,0xA8);

#ifdef __cplusplus

class DECLSPEC_UUID("7536F0BF-2857-4a01-ACFA-5DDF1C9840A8")
ParametriticConstraint;
#endif

DEFINE_GUID(CLSID_CutExtrusion,0xB60B0F24,0x9069,0x4ab4,0xB0,0xE4,0xDC,0x55,0x8A,0x6B,0xF4,0xA3);

#ifdef __cplusplus

class DECLSPEC_UUID("B60B0F24-9069-4ab4-B0E4-DC558A6BF4A3")
CutExtrusion;
#endif

DEFINE_GUID(CLSID_Body7,0x29E7E8D5,0x7988,0x408f,0xA0,0x2B,0x7C,0x08,0x71,0x22,0x1C,0x9C);

#ifdef __cplusplus

class DECLSPEC_UUID("29E7E8D5-7988-408f-A02B-7C0871221C9C")
Body7;
#endif

DEFINE_GUID(CLSID_SheetMetalBodies,0xDC4C565F,0x935D,0x4f7a,0x97,0xA5,0xDB,0x4D,0x25,0x2F,0x6B,0x91);

#ifdef __cplusplus

class DECLSPEC_UUID("DC4C565F-935D-4f7a-97A5-DB4D252F6B91")
SheetMetalBodies;
#endif

DEFINE_GUID(CLSID_SheetMetalBody,0x1301DC0F,0xCDF1,0x4eb1,0x90,0xB4,0xD0,0x6E,0xA2,0x61,0x0F,0x0B);

#ifdef __cplusplus

class DECLSPEC_UUID("1301DC0F-CDF1-4eb1-90B4-D06EA2610F0B")
SheetMetalBody;
#endif

DEFINE_GUID(CLSID_Points3D,0x2B0C2912,0x59D7,0x4976,0x9E,0x57,0x20,0xD8,0x3C,0xDA,0x90,0x38);

#ifdef __cplusplus

class DECLSPEC_UUID("2B0C2912-59D7-4976-9E57-20D83CDA9038")
Points3D;
#endif

DEFINE_GUID(CLSID_Point3D,0xA4CA403F,0xB960,0x4e41,0xA3,0x50,0xC0,0x7D,0x15,0x11,0x5D,0xC2);

#ifdef __cplusplus

class DECLSPEC_UUID("A4CA403F-B960-4e41-A350-C07D15115DC2")
Point3D;
#endif

DEFINE_GUID(CLSID_Point3DParamDisplace,0x7E00821A,0xE79B,0x412b,0x9A,0x51,0xAD,0xB9,0x66,0x4C,0x23,0xA0);

#ifdef __cplusplus

class DECLSPEC_UUID("7E00821A-E79B-412b-9A51-ADB9664C23A0")
Point3DParamDisplace;
#endif

DEFINE_GUID(CLSID_Point3DParamIntersect,0xDE8A8774,0x6705,0x4971,0xBA,0x1F,0xF8,0x89,0xE7,0xE3,0x75,0x2C);

#ifdef __cplusplus

class DECLSPEC_UUID("DE8A8774-6705-4971-BA1F-F889E7E3752C")
Point3DParamIntersect;
#endif

DEFINE_GUID(CLSID_Point3DParamCenter,0x02DA512F,0x097F,0x4911,0x8E,0x27,0x8C,0x54,0x6E,0xD4,0xB2,0x2A);

#ifdef __cplusplus

class DECLSPEC_UUID("02DA512F-097F-4911-8E27-8C546ED4B22A")
Point3DParamCenter;
#endif

DEFINE_GUID(CLSID_Point3DParamCurve,0xAAC9EE7F,0xC69F,0x48dd,0x9A,0x38,0x8E,0x38,0xC3,0x8B,0xAB,0x28);

#ifdef __cplusplus

class DECLSPEC_UUID("AAC9EE7F-C69F-48dd-9A38-8E38C38BAB28")
Point3DParamCurve;
#endif

DEFINE_GUID(CLSID_Point3DParamSurface,0xE5490B1D,0x49E8,0x4042,0xBE,0xAA,0xC6,0x66,0x95,0x2D,0x3B,0x1B);

#ifdef __cplusplus

class DECLSPEC_UUID("E5490B1D-49E8-4042-BEAA-C666952D3B1B")
Point3DParamSurface;
#endif

DEFINE_GUID(CLSID_Point3DParamProjection,0xBD60E7D5,0x0E9E,0x4e00,0xA2,0x7B,0x08,0xC1,0x1C,0xFD,0x41,0xBD);

#ifdef __cplusplus

class DECLSPEC_UUID("BD60E7D5-0E9E-4e00-A27B-08C11CFD41BD")
Point3DParamProjection;
#endif

DEFINE_GUID(CLSID_SheetMetalBends,0xE82B9381,0x1BA1,0x4cd8,0x8F,0x0A,0x0F,0x7A,0xAB,0x07,0x77,0xCE);

#ifdef __cplusplus

class DECLSPEC_UUID("E82B9381-1BA1-4cd8-8F0A-0F7AAB0777CE")
SheetMetalBends;
#endif

DEFINE_GUID(CLSID_SheetMetalBend,0xC84C5989,0x2AE1,0x4e61,0x9C,0x29,0x88,0x02,0x8C,0x88,0x73,0xA2);

#ifdef __cplusplus

class DECLSPEC_UUID("C84C5989-2AE1-4e61-9C29-88028C8873A2")
SheetMetalBend;
#endif

DEFINE_GUID(CLSID_SheetMetalLineBends,0xC7DF1AFE,0xA3EF,0x427a,0xB7,0x32,0x70,0xDE,0xFD,0xDB,0x35,0x1D);

#ifdef __cplusplus

class DECLSPEC_UUID("C7DF1AFE-A3EF-427a-B732-70DEFDDB351D")
SheetMetalLineBends;
#endif

DEFINE_GUID(CLSID_SheetMetalLineBend,0xDCA09F8B,0x187B,0x400b,0xAF,0xFA,0xD1,0xEC,0x84,0x25,0x1E,0xC2);

#ifdef __cplusplus

class DECLSPEC_UUID("DCA09F8B-187B-400b-AFFA-D1EC84251EC2")
SheetMetalLineBend;
#endif

DEFINE_GUID(CLSID_SheetMetalHole,0x6D725058,0x9A30,0x49b2,0x8B,0xA6,0x46,0x6F,0x28,0x07,0xE2,0x32);

#ifdef __cplusplus

class DECLSPEC_UUID("6D725058-9A30-49b2-8BA6-466F2807E232")
SheetMetalHole;
#endif

DEFINE_GUID(CLSID_SheetMetalHoles,0xD11BBACB,0x3A8A,0x4b3f,0x9D,0xEC,0xC1,0x7C,0xC9,0x98,0x90,0x83);

#ifdef __cplusplus

class DECLSPEC_UUID("D11BBACB-3A8A-4b3f-9DEC-C17CC9989083")
SheetMetalHoles;
#endif

DEFINE_GUID(CLSID_SheetMetalCut,0x17CDFC21,0xA515,0x4011,0xBC,0xC6,0xA3,0x42,0x02,0x19,0xE1,0x9D);

#ifdef __cplusplus

class DECLSPEC_UUID("17CDFC21-A515-4011-BCC6-A3420219E19D")
SheetMetalCut;
#endif

DEFINE_GUID(CLSID_SheetMetalCuts,0xA0C32567,0x9107,0x4695,0xA9,0xB0,0x4D,0x99,0x1B,0x58,0x68,0x9E);

#ifdef __cplusplus

class DECLSPEC_UUID("A0C32567-9107-4695-A9B0-4D991B58689E")
SheetMetalCuts;
#endif

DEFINE_GUID(CLSID_RadialDimension,0xF6910669,0xB8FC,0x4f05,0x87,0x2E,0xBA,0x10,0xDE,0x09,0x64,0xA4);

#ifdef __cplusplus

class DECLSPEC_UUID("F6910669-B8FC-4f05-872E-BA10DE0964A4")
RadialDimension;
#endif

DEFINE_GUID(CLSID_RadialDimensions,0xBD3D6D8C,0xC5D8,0x42f0,0x92,0x6D,0xFD,0x99,0x5E,0xE6,0xD2,0x32);

#ifdef __cplusplus

class DECLSPEC_UUID("BD3D6D8C-C5D8-42f0-926D-FD995EE6D232")
RadialDimensions;
#endif

DEFINE_GUID(CLSID_BreakRadialDimension,0x60ADBA37,0x9540,0x40e9,0x8F,0x52,0x03,0xE8,0x0E,0x3F,0x42,0x3E);

#ifdef __cplusplus

class DECLSPEC_UUID("60ADBA37-9540-40e9-8F52-03E80E3F423E")
BreakRadialDimension;
#endif

DEFINE_GUID(CLSID_RadialBreakDimensions,0x2782662C,0xD266,0x46d6,0x9B,0xF5,0x6E,0x46,0x12,0xD3,0x2D,0x9F);

#ifdef __cplusplus

class DECLSPEC_UUID("2782662C-D266-46d6-9BF5-6E4612D32D9F")
RadialBreakDimensions;
#endif

DEFINE_GUID(CLSID_DiametralDimension,0x117E5AB9,0x3D8C,0x4f14,0xBB,0x4B,0x14,0xFF,0x43,0x08,0x2E,0xA7);

#ifdef __cplusplus

class DECLSPEC_UUID("117E5AB9-3D8C-4f14-BB4B-14FF43082EA7")
DiametralDimension;
#endif

DEFINE_GUID(CLSID_DiametralDimensions,0x2195AC03,0x677A,0x4236,0x9B,0xEA,0xFB,0xDE,0x74,0xCE,0xE7,0xF3);

#ifdef __cplusplus

class DECLSPEC_UUID("2195AC03-677A-4236-9BEA-FBDE74CEE7F3")
DiametralDimensions;
#endif

DEFINE_GUID(CLSID_LineDimensions3D,0xBC66C415,0x362A,0x4246,0x85,0x0F,0xA7,0xD3,0x9B,0xDE,0x6C,0x1B);

#ifdef __cplusplus

class DECLSPEC_UUID("BC66C415-362A-4246-850F-A7D39BDE6C1B")
LineDimensions3D;
#endif

DEFINE_GUID(CLSID_BaseLineDimension3D,0xF8E92C35,0x23B4,0x4058,0x85,0xE5,0x32,0x4B,0x46,0xFB,0x55,0x1F);

#ifdef __cplusplus

class DECLSPEC_UUID("F8E92C35-23B4-4058-85E5-324B46FB551F")
BaseLineDimension3D;
#endif

DEFINE_GUID(CLSID_LineDimension3D,0x0FD2290E,0x6FF6,0x48c4,0x9B,0x10,0xE1,0xC6,0xD0,0x60,0x8C,0x74);

#ifdef __cplusplus

class DECLSPEC_UUID("0FD2290E-6FF6-48c4-9B10-E1C6D0608C74")
LineDimension3D;
#endif

DEFINE_GUID(CLSID_LineDimension,0xA7B94E84,0xCB49,0x4021,0x8A,0xC2,0x27,0xAD,0xC8,0x03,0x6B,0x4D);

#ifdef __cplusplus

class DECLSPEC_UUID("A7B94E84-CB49-4021-8AC2-27ADC8036B4D")
LineDimension;
#endif

DEFINE_GUID(CLSID_LineDimensions,0xD44491CE,0xCDD2,0x4435,0xAF,0xAB,0x7A,0xEC,0x8E,0x58,0xD9,0x12);

#ifdef __cplusplus

class DECLSPEC_UUID("D44491CE-CDD2-4435-AFAB-7AEC8E58D912")
LineDimensions;
#endif

DEFINE_GUID(CLSID_RadialDimension3D,0x1072B7E5,0x9C4B,0x44f2,0xA8,0xF0,0x1A,0x60,0xC5,0x9D,0x49,0x09);

#ifdef __cplusplus

class DECLSPEC_UUID("1072B7E5-9C4B-44f2-A8F0-1A60C59D4909")
RadialDimension3D;
#endif

DEFINE_GUID(CLSID_DiametralDimension3D,0xFC1FC235,0x02C5,0x41d5,0x87,0x1B,0xD7,0x54,0x92,0x6B,0x59,0x3E);

#ifdef __cplusplus

class DECLSPEC_UUID("FC1FC235-02C5-41d5-871B-D754926B593E")
DiametralDimension3D;
#endif

DEFINE_GUID(CLSID_RadialDimensions3D,0x7245F71F,0xE655,0x4102,0x8C,0x2C,0xB4,0xE6,0xD2,0xFA,0x26,0xD8);

#ifdef __cplusplus

class DECLSPEC_UUID("7245F71F-E655-4102-8C2C-B4E6D2FA26D8")
RadialDimensions3D;
#endif

DEFINE_GUID(CLSID_DiametralDimensions3D,0xF3F0EDE3,0x3E00,0x48e8,0x92,0x2F,0x12,0x1C,0xA5,0x71,0xBE,0x26);

#ifdef __cplusplus

class DECLSPEC_UUID("F3F0EDE3-3E00-48e8-922F-121CA571BE26")
DiametralDimensions3D;
#endif

DEFINE_GUID(CLSID_BreakLineDimension,0x9F6632A5,0xAAA8,0x4bf3,0x94,0xAA,0xAD,0xF2,0x83,0x8B,0xEC,0x74);

#ifdef __cplusplus

class DECLSPEC_UUID("9F6632A5-AAA8-4bf3-94AA-ADF2838BEC74")
BreakLineDimension;
#endif

DEFINE_GUID(CLSID_BreakLineDimensions,0x865EDBB6,0xF511,0x45ef,0xAA,0x82,0xC1,0x9A,0xD1,0x26,0xF9,0xB9);

#ifdef __cplusplus

class DECLSPEC_UUID("865EDBB6-F511-45ef-AA82-C19AD126F9B9")
BreakLineDimensions;
#endif

DEFINE_GUID(CLSID_HeightDimension,0xCA99C371,0x8E76,0x4fe0,0xA1,0x76,0xA3,0x3F,0xC6,0xD2,0xFD,0xFC);

#ifdef __cplusplus

class DECLSPEC_UUID("CA99C371-8E76-4fe0-A176-A33FC6D2FDFC")
HeightDimension;
#endif

DEFINE_GUID(CLSID_HeightDimensions,0x2A942576,0xE76D,0x4375,0xA1,0xD9,0x0C,0xCC,0x4B,0x38,0x27,0x86);

#ifdef __cplusplus

class DECLSPEC_UUID("2A942576-E76D-4375-A1D9-0CCC4B382786")
HeightDimensions;
#endif

DEFINE_GUID(CLSID_AngleDimension,0xBEABBB41,0xF220,0x43ab,0x99,0x22,0x39,0xBF,0x76,0x20,0x7E,0x2A);

#ifdef __cplusplus

class DECLSPEC_UUID("BEABBB41-F220-43ab-9922-39BF76207E2A")
AngleDimension;
#endif

DEFINE_GUID(CLSID_AngleDimensions,0x82DDC7DF,0xD7C3,0x41a6,0x99,0x13,0xDE,0xB4,0xCE,0x34,0x92,0x03);

#ifdef __cplusplus

class DECLSPEC_UUID("82DDC7DF-D7C3-41a6-9913-DEB4CE349203")
AngleDimensions;
#endif

DEFINE_GUID(CLSID_BreakAngleDimension,0xD33D3BFC,0xBEDC,0x4e91,0xA7,0x8C,0xD0,0x34,0x61,0x37,0x9E,0x15);

#ifdef __cplusplus

class DECLSPEC_UUID("D33D3BFC-BEDC-4e91-A78C-D03461379E15")
BreakAngleDimension;
#endif

DEFINE_GUID(CLSID_ArcDimension,0x37F30E53,0x7355,0x436d,0x8E,0xEF,0x3B,0x1D,0xE7,0xE9,0xEF,0xCE);

#ifdef __cplusplus

class DECLSPEC_UUID("37F30E53-7355-436d-8EEF-3B1DE7E9EFCE")
ArcDimension;
#endif

DEFINE_GUID(CLSID_ArcDimensions,0xD18DFB31,0x8A26,0x4281,0xBF,0x18,0xC4,0x62,0xCE,0xDB,0xE7,0x14);

#ifdef __cplusplus

class DECLSPEC_UUID("D18DFB31-8A26-4281-BF18-C462CEDBE714")
ArcDimensions;
#endif

DEFINE_GUID(CLSID_AngleDimension3D,0x9D769F23,0x62B6,0x46fb,0x9B,0xC9,0xA7,0x4A,0x28,0xE9,0x85,0x01);

#ifdef __cplusplus

class DECLSPEC_UUID("9D769F23-62B6-46fb-9BC9-A74A28E98501")
AngleDimension3D;
#endif

DEFINE_GUID(CLSID_AngleDimensions3D,0x154CBD57,0x2124,0x4667,0xBE,0xCA,0x61,0xA6,0xD8,0xAB,0x38,0x0A);

#ifdef __cplusplus

class DECLSPEC_UUID("154CBD57-2124-4667-BECA-61A6D8AB380A")
AngleDimensions3D;
#endif

DEFINE_GUID(CLSID_CurveVertexParam,0x114075C2,0x6D73,0x4198,0xA2,0x9A,0xF0,0x5D,0x77,0x2F,0xC7,0x5D);

#ifdef __cplusplus

class DECLSPEC_UUID("114075C2-6D73-4198-A29A-F05D772FC75D")
CurveVertexParam;
#endif

DEFINE_GUID(CLSID_Splines3D,0xA7899FAC,0xECF5,0x40ac,0x92,0x67,0x97,0xB9,0x8B,0x84,0x95,0x70);

#ifdef __cplusplus

class DECLSPEC_UUID("A7899FAC-ECF5-40ac-9267-97B98B849570")
Splines3D;
#endif

DEFINE_GUID(CLSID_Spline3D,0xCF10FB1D,0xFE72,0x48a2,0xA3,0x6B,0x19,0xB6,0x35,0x94,0xD6,0x74);

#ifdef __cplusplus

class DECLSPEC_UUID("CF10FB1D-FE72-48a2-A36B-19B63594D674")
Spline3D;
#endif

DEFINE_GUID(CLSID_LocalCoordinateSystem,0xE39CAE1D,0x9B07,0x4171,0x8A,0x97,0x90,0xD9,0xE7,0xE4,0x75,0xD4);

#ifdef __cplusplus

class DECLSPEC_UUID("E39CAE1D-9B07-4171-8A97-90D9E7E475D4")
LocalCoordinateSystem;
#endif

DEFINE_GUID(CLSID_LocalCoordinateSystems,0xC2EB441C,0x8053,0x4ecb,0x96,0x1F,0xD0,0x60,0x77,0x69,0xB5,0x08);

#ifdef __cplusplus

class DECLSPEC_UUID("C2EB441C-8053-4ecb-961F-D0607769B508")
LocalCoordinateSystems;
#endif

DEFINE_GUID(CLSID_LocalCSAxesDirectionParam,0xD9B8494F,0x9693,0x488d,0xAC,0x64,0x1E,0xEE,0x76,0x77,0x37,0xE9);

#ifdef __cplusplus

class DECLSPEC_UUID("D9B8494F-9693-488d-AC64-1EEE767737E9")
LocalCSAxesDirectionParam;
#endif

DEFINE_GUID(CLSID_LocalCSEulerParam,0xD49278A6,0x1476,0x48fb,0x93,0x74,0xCD,0x06,0x67,0x42,0xB0,0xAC);

#ifdef __cplusplus

class DECLSPEC_UUID("D49278A6-1476-48fb-9374-CD066742B0AC")
LocalCSEulerParam;
#endif

DEFINE_GUID(CLSID_PolyLine,0x1F490D96,0x2098,0x40e6,0xBB,0x73,0x52,0xDD,0x0A,0x71,0x11,0x1A);

#ifdef __cplusplus

class DECLSPEC_UUID("1F490D96-2098-40e6-BB73-52DD0A71111A")
PolyLine;
#endif

DEFINE_GUID(CLSID_PolyLines,0x1DC144A1,0x0F9F,0x4d93,0x98,0xEC,0x53,0xBF,0xCC,0xF7,0x95,0xFE);

#ifdef __cplusplus

class DECLSPEC_UUID("1DC144A1-0F9F-4d93-98EC-53BFCCF795FE")
PolyLines;
#endif

DEFINE_GUID(CLSID_BaseLeader,0x7A899963,0x5137,0x459a,0xAB,0x0A,0x48,0x65,0x30,0x74,0xBC,0xD0);

#ifdef __cplusplus

class DECLSPEC_UUID("7A899963-5137-459a-AB0A-48653074BCD0")
BaseLeader;
#endif

DEFINE_GUID(CLSID_Leaders,0x90E9D9E8,0x1451,0x4ba1,0x97,0xA6,0x4B,0xE6,0xD1,0x50,0x86,0x49);

#ifdef __cplusplus

class DECLSPEC_UUID("90E9D9E8-1451-4ba1-97A6-4BE6D1508649")
Leaders;
#endif

DEFINE_GUID(CLSID_Roughs,0x55912A9B,0x6387,0x4946,0x80,0xB9,0xC3,0x0D,0x1D,0xD3,0x0D,0x07);

#ifdef __cplusplus

class DECLSPEC_UUID("55912A9B-6387-4946-80B9-C30D1DD30D07")
Roughs;
#endif

DEFINE_GUID(CLSID_Rough,0x1237C011,0x5D75,0x4ebf,0xB5,0x3A,0x74,0x4A,0xA1,0x6D,0x7E,0xC7);

#ifdef __cplusplus

class DECLSPEC_UUID("1237C011-5D75-4ebf-B53A-744AA16D7EC7")
Rough;
#endif

DEFINE_GUID(CLSID_BaseLeader3D,0x31DC80A4,0xBCC8,0x45c1,0x8C,0xE1,0x6C,0x43,0xE2,0x4F,0xD9,0x6C);

#ifdef __cplusplus

class DECLSPEC_UUID("31DC80A4-BCC8-45c1-8CE1-6C43E24FD96C")
BaseLeader3D;
#endif

DEFINE_GUID(CLSID_Leaders3D,0x9B18CB77,0x9EDD,0x440c,0xB1,0x54,0x96,0x9F,0x1B,0x5C,0x7B,0x98);

#ifdef __cplusplus

class DECLSPEC_UUID("9B18CB77-9EDD-440c-B154-969F1B5C7B98")
Leaders3D;
#endif

DEFINE_GUID(CLSID_Rough3D,0x48398FC6,0xD508,0x4f69,0xA2,0x92,0x84,0x0A,0xC4,0xC7,0xDB,0x69);

#ifdef __cplusplus

class DECLSPEC_UUID("48398FC6-D508-4f69-A292-840AC4C7DB69")
Rough3D;
#endif

DEFINE_GUID(CLSID_Roughs3D,0xD2ED0BEB,0x1705,0x4d5f,0xB8,0xC4,0xF0,0xD8,0x8B,0x49,0xAB,0x2D);

#ifdef __cplusplus

class DECLSPEC_UUID("D2ED0BEB-1705-4d5f-B8C4-F0D88B49AB2D")
Roughs3D;
#endif

DEFINE_GUID(CLSID__Base,0x700819A4,0x82B8,0x4e32,0xB5,0x16,0xDB,0x0E,0xD4,0x8D,0x1D,0x05);

#ifdef __cplusplus

class DECLSPEC_UUID("700819A4-82B8-4e32-B516-DB0ED48D1D05")
_Base;
#endif

DEFINE_GUID(CLSID_Bases,0x2D2BC5F4,0x2D44,0x4c4e,0xA2,0x0E,0x1F,0x8D,0x80,0x95,0xDF,0x73);

#ifdef __cplusplus

class DECLSPEC_UUID("2D2BC5F4-2D44-4c4e-A20E-1F8D8095DF73")
Bases;
#endif

DEFINE_GUID(CLSID_TableCell,0x7C3AD6F0,0x625E,0x4756,0x8C,0x64,0xA0,0x47,0x83,0x65,0x3A,0x72);

#ifdef __cplusplus

class DECLSPEC_UUID("7C3AD6F0-625E-4756-8C64-A04783653A72")
TableCell;
#endif

DEFINE_GUID(CLSID_DrawingTable,0x020B47A5,0x6B61,0x48b2,0x80,0xF6,0x3A,0x60,0x7E,0x0E,0x0A,0x94);

#ifdef __cplusplus

class DECLSPEC_UUID("020B47A5-6B61-48b2-80F6-3A607E0E0A94")
DrawingTable;
#endif

DEFINE_GUID(CLSID_DrawingTables,0xE0C24704,0x8D4E,0x45ba,0x91,0x75,0x97,0x2D,0x58,0xE3,0x7C,0x7F);

#ifdef __cplusplus

class DECLSPEC_UUID("E0C24704-8D4E-45ba-9175-972D58E37C7F")
DrawingTables;
#endif

DEFINE_GUID(CLSID_Tolerances,0x6E4F37E5,0x2F92,0x4a22,0x97,0xEF,0xF5,0xAE,0xC3,0x74,0x34,0x3A);

#ifdef __cplusplus

class DECLSPEC_UUID("6E4F37E5-2F92-4a22-97EF-F5AEC374343A")
Tolerances;
#endif

DEFINE_GUID(CLSID__Tolerance,0xBD78C015,0x15E7,0x45f6,0xAD,0x21,0xD7,0x37,0x00,0x7E,0xD7,0xC1);

#ifdef __cplusplus

class DECLSPEC_UUID("BD78C015-15E7-45f6-AD21-D737007ED7C1")
_Tolerance;
#endif

DEFINE_GUID(CLSID_Bases3D,0xDBF9FA07,0x8FE1,0x46de,0xB2,0x36,0x99,0x31,0x38,0x8F,0xF5,0x43);

#ifdef __cplusplus

class DECLSPEC_UUID("DBF9FA07-8FE1-46de-B236-9931388FF543")
Bases3D;
#endif

DEFINE_GUID(CLSID_Base3D,0xDAAE59DF,0xE97C,0x4434,0x91,0x66,0x8A,0x52,0xBE,0xA0,0xFF,0x31);

#ifdef __cplusplus

class DECLSPEC_UUID("DAAE59DF-E97C-4434-9166-8A52BEA0FF31")
Base3D;
#endif

DEFINE_GUID(CLSID_Tolerances3D,0xEE1CF4A7,0xCB7E,0x42c2,0x85,0x4D,0x32,0xEB,0x10,0xE2,0x8C,0x78);

#ifdef __cplusplus

class DECLSPEC_UUID("EE1CF4A7-CB7E-42c2-854D-32EB10E28C78")
Tolerances3D;
#endif

DEFINE_GUID(CLSID_Tolerance3D,0x68C4A672,0x8029,0x40e8,0x92,0x03,0xE5,0x00,0x46,0x07,0x2B,0xCF);

#ifdef __cplusplus

class DECLSPEC_UUID("68C4A672-8029-40e8-9203-E50046072BCF")
Tolerance3D;
#endif

DEFINE_GUID(CLSID_LocalCSOrientByObjectParam,0x9018B030,0x43B0,0x4a67,0xAE,0x2B,0x11,0xF1,0x4A,0xB2,0x71,0x6D);

#ifdef __cplusplus

class DECLSPEC_UUID("9018B030-43B0-4a67-AE2B-11F14AB2716D")
LocalCSOrientByObjectParam;
#endif

DEFINE_GUID(CLSID_CutLine,0xDE089315,0x444A,0x46a1,0xA5,0x51,0x4F,0x02,0x64,0xEF,0x11,0xD2);

#ifdef __cplusplus

class DECLSPEC_UUID("DE089315-444A-46a1-A551-4F0264EF11D2")
CutLine;
#endif

DEFINE_GUID(CLSID_CutLines,0xAFDE9B99,0x603D,0x4b29,0xB2,0xE5,0x3F,0x73,0x99,0xB7,0x26,0x19);

#ifdef __cplusplus

class DECLSPEC_UUID("AFDE9B99-603D-4b29-B2E5-3F7399B72619")
CutLines;
#endif

DEFINE_GUID(CLSID_ExternalTessellationObject,0xC51785D4,0x4665,0x4521,0x88,0x5E,0x1D,0x06,0x33,0xAE,0x44,0x5C);

#ifdef __cplusplus

class DECLSPEC_UUID("C51785D4-4665-4521-885E-1D0633AE445C")
ExternalTessellationObject;
#endif

DEFINE_GUID(CLSID_ControlPoints,0xF8B4A9EA,0x09FE,0x41c4,0x8E,0x66,0xB2,0xA0,0x15,0xCA,0x51,0xC8);

#ifdef __cplusplus

class DECLSPEC_UUID("F8B4A9EA-09FE-41c4-8E66-B2A015CA51C8")
ControlPoints;
#endif

DEFINE_GUID(CLSID_ControlPoint,0x816922D4,0x1FBA,0x4672,0x95,0xAE,0xE2,0x7B,0xEC,0x78,0x2E,0x47);

#ifdef __cplusplus

class DECLSPEC_UUID("816922D4-1FBA-4672-95AE-E27BEC782E47")
ControlPoint;
#endif

DEFINE_GUID(CLSID_ConjunctivePoints,0xC5DDAF9B,0x32B7,0x4552,0xAD,0xAD,0xF3,0x1D,0x87,0x06,0xED,0x6B);

#ifdef __cplusplus

class DECLSPEC_UUID("C5DDAF9B-32B7-4552-ADAD-F31D8706ED6B")
ConjunctivePoints;
#endif

DEFINE_GUID(CLSID_ConjunctivePoint,0x4A7A9FC8,0x85D7,0x4b62,0x99,0xBB,0x7A,0x30,0x3F,0x1D,0x6E,0x98);

#ifdef __cplusplus

class DECLSPEC_UUID("4A7A9FC8-85D7-4b62-99BB-7A303F1D6E98")
ConjunctivePoint;
#endif

DEFINE_GUID(CLSID_PropertyBmpList,0x76A04B67,0x394F,0x4b63,0xBC,0x9C,0x67,0xC5,0x2A,0x36,0xF9,0x8A);

#ifdef __cplusplus

class DECLSPEC_UUID("76A04B67-394F-4b63-BC9C-67C52A36F98A")
PropertyBmpList;
#endif

DEFINE_GUID(CLSID_ViewPointer,0xE437188E,0x6071,0x4c50,0x9E,0x43,0xFB,0x53,0xE6,0x3D,0x9E,0xE9);

#ifdef __cplusplus

class DECLSPEC_UUID("E437188E-6071-4c50-9E43-FB53E63D9EE9")
ViewPointer;
#endif

DEFINE_GUID(CLSID_ViewPointers,0xA3035980,0xE806,0x4458,0xBF,0x4E,0x4B,0xD8,0xBC,0x54,0xD5,0x92);

#ifdef __cplusplus

class DECLSPEC_UUID("A3035980-E806-4458-BF4E-4BD8BC54D592")
ViewPointers;
#endif

DEFINE_GUID(CLSID_Multiline,0x44A427DC,0x4604,0x43ca,0x9A,0xF8,0x02,0x6C,0x49,0x4C,0xEC,0x57);

#ifdef __cplusplus

class DECLSPEC_UUID("44A427DC-4604-43ca-9AF8-026C494CEC57")
Multiline;
#endif

DEFINE_GUID(CLSID_Multilines,0x20023299,0x3104,0x4af3,0xAC,0x55,0x6D,0x2B,0x36,0x88,0x96,0xBB);

#ifdef __cplusplus

class DECLSPEC_UUID("20023299-3104-4af3-AC55-6D2B368896BB")
Multilines;
#endif

DEFINE_GUID(CLSID_Contour,0x12FABDF2,0xCAA4,0x4c8f,0xA3,0xE6,0xA5,0x6D,0xD9,0x05,0x52,0xB5);

#ifdef __cplusplus

class DECLSPEC_UUID("12FABDF2-CAA4-4c8f-A3E6-A56DD90552B5")
Contour;
#endif

DEFINE_GUID(CLSID_ContourSegment,0x33DEDD79,0x0855,0x4c92,0xA1,0xB9,0x0D,0x45,0xBD,0x3B,0x8D,0xAB);

#ifdef __cplusplus

class DECLSPEC_UUID("33DEDD79-0855-4c92-A1B9-0D45BD3B8DAB")
ContourSegment;
#endif

DEFINE_GUID(CLSID_ContourLineSegment,0x1D09CC46,0xFBCC,0x4b09,0x8D,0x0A,0xE2,0x0B,0x22,0xFA,0xE3,0xEF);

#ifdef __cplusplus

class DECLSPEC_UUID("1D09CC46-FBCC-4b09-8D0A-E20B22FAE3EF")
ContourLineSegment;
#endif

DEFINE_GUID(CLSID_ContourArc,0x31450942,0xA67C,0x4459,0xB7,0xEB,0xF1,0xB9,0x00,0xB1,0x00,0xFD);

#ifdef __cplusplus

class DECLSPEC_UUID("31450942-A67C-4459-B7EB-F1B900B100FD")
ContourArc;
#endif

DEFINE_GUID(CLSID_Curve2D,0x93F02582,0x585F,0x4319,0x90,0xB5,0x39,0x74,0xA7,0x09,0x99,0xD8);

#ifdef __cplusplus

class DECLSPEC_UUID("93F02582-585F-4319-90B5-3974A70999D8")
Curve2D;
#endif

DEFINE_GUID(CLSID_DrawingContours,0xB3BADEEA,0x2F85,0x4a72,0x85,0x46,0xDF,0xEA,0x96,0xE3,0xE7,0x36);

#ifdef __cplusplus

class DECLSPEC_UUID("B3BADEEA-2F85-4a72-8546-DFEA96E3E736")
DrawingContours;
#endif

DEFINE_GUID(CLSID_DrawingContour,0x63502BD9,0x2EC0,0x4908,0x8E,0x45,0xDE,0x43,0x3E,0x7B,0x9D,0xB7);

#ifdef __cplusplus

class DECLSPEC_UUID("63502BD9-2EC0-4908-8E45-DE433E7B9DB7")
DrawingContour;
#endif

DEFINE_GUID(CLSID_SplitLines,0x452F7CD4,0x5C9C,0x48f5,0x95,0x6F,0xE0,0x7E,0x0B,0x1C,0xC3,0x0D);

#ifdef __cplusplus

class DECLSPEC_UUID("452F7CD4-5C9C-48f5-956F-E07E0B1CC30D")
SplitLines;
#endif

DEFINE_GUID(CLSID_SplitLine,0x606AD1D9,0xFE0C,0x44ef,0xAB,0x97,0xEE,0x65,0xEF,0x26,0xBC,0x08);

#ifdef __cplusplus

class DECLSPEC_UUID("606AD1D9-FE0C-44ef-AB97-EE65EF26BC08")
SplitLine;
#endif

DEFINE_GUID(CLSID_SurfacePatches,0xF77E276E,0x6F68,0x4a23,0xAF,0x68,0xEE,0xF2,0x96,0x03,0xB1,0xAD);

#ifdef __cplusplus

class DECLSPEC_UUID("F77E276E-6F68-4a23-AF68-EEF29603B1AD")
SurfacePatches;
#endif

DEFINE_GUID(CLSID_SurfacePatch,0xE61F549B,0x2E9E,0x45b6,0xA6,0x47,0x71,0x73,0x0E,0x3E,0xEA,0x49);

#ifdef __cplusplus

class DECLSPEC_UUID("E61F549B-2E9E-45b6-A647-71730E3EEA49")
SurfacePatch;
#endif

DEFINE_GUID(CLSID_FaceRemovers,0x8B491E62,0x1DE7,0x4c17,0x96,0x29,0xF7,0x7D,0xF0,0xE8,0xE4,0x5C);

#ifdef __cplusplus

class DECLSPEC_UUID("8B491E62-1DE7-4c17-9629-F77DF0E8E45C")
FaceRemovers;
#endif

DEFINE_GUID(CLSID_FaceRemover,0x5B433BC2,0xC5DB,0x4cf7,0x8C,0x99,0xEB,0xCD,0x14,0x21,0xD4,0x3E);

#ifdef __cplusplus

class DECLSPEC_UUID("5B433BC2-C5DB-4cf7-8C99-EBCD1421D43E")
FaceRemover;
#endif

DEFINE_GUID(CLSID_SurfaceSewers,0x98702E0A,0xC12C,0x49f3,0xA1,0x88,0xFB,0xC4,0x53,0xB4,0xB8,0x8C);

#ifdef __cplusplus

class DECLSPEC_UUID("98702E0A-C12C-49f3-A188-FBC453B4B88C")
SurfaceSewers;
#endif

DEFINE_GUID(CLSID_SurfaceSewer,0x9541E720,0xDED1,0x4a04,0xA6,0xF0,0xF1,0x1C,0x25,0x12,0xC9,0x32);

#ifdef __cplusplus

class DECLSPEC_UUID("9541E720-DED1-4a04-A6F0-F11C2512C932")
SurfaceSewer;
#endif

DEFINE_GUID(CLSID_NurbsSurfaces,0xFDCF85BA,0x4BB2,0x4a83,0xAF,0x0D,0x73,0xD9,0x67,0x48,0x5B,0xED);

#ifdef __cplusplus

class DECLSPEC_UUID("FDCF85BA-4BB2-4a83-AF0D-73D967485BED")
NurbsSurfaces;
#endif

DEFINE_GUID(CLSID_NurbsSurface,0xD2D5BC88,0x7991,0x4245,0x99,0x68,0x62,0x22,0xF3,0x99,0x3F,0x45);

#ifdef __cplusplus

class DECLSPEC_UUID("D2D5BC88-7991-4245-9968-6222F3993F45")
NurbsSurface;
#endif

DEFINE_GUID(CLSID_PropertyLibExplorer,0xF89065E8,0xD547,0x452f,0x87,0x23,0x24,0xDB,0x23,0x04,0xBC,0x29);

#ifdef __cplusplus

class DECLSPEC_UUID("F89065E8-D547-452f-8723-24DB2304BC29")
PropertyLibExplorer;
#endif

DEFINE_GUID(CLSID_ExternalGDIObject,0xD7A43DA7,0x65AE,0x4006,0xAB,0x72,0xB5,0x79,0xCE,0xE9,0xA9,0x9C);

#ifdef __cplusplus

class DECLSPEC_UUID("D7A43DA7-65AE-4006-AB72-B579CEE9A99C")
ExternalGDIObject;
#endif

DEFINE_GUID(CLSID_Circles,0xE91C61E1,0x5C35,0x4eb3,0x97,0x2E,0x21,0x3C,0xC0,0x12,0x42,0x6F);

#ifdef __cplusplus

class DECLSPEC_UUID("E91C61E1-5C35-4eb3-972E-213CC012426F")
Circles;
#endif

DEFINE_GUID(CLSID__Circle,0x9F1D8D78,0xC0CD,0x446d,0x87,0x7F,0x79,0x33,0x0B,0x01,0xB8,0xFA);

#ifdef __cplusplus

class DECLSPEC_UUID("9F1D8D78-C0CD-446d-877F-79330B01B8FA")
_Circle;
#endif

DEFINE_GUID(CLSID_MacroObjects,0x2B471C1A,0xE44F,0x44ad,0x99,0xEA,0x4A,0xC1,0x26,0xB8,0x09,0x65);

#ifdef __cplusplus

class DECLSPEC_UUID("2B471C1A-E44F-44ad-99EA-4AC126B80965")
MacroObjects;
#endif

DEFINE_GUID(CLSID_MacroObject,0xA9880F8D,0x2166,0x4690,0xAC,0xA5,0x44,0x79,0xDB,0xE4,0x25,0x1B);

#ifdef __cplusplus

class DECLSPEC_UUID("A9880F8D-2166-4690-ACA5-4479DBE4251B")
MacroObject;
#endif

DEFINE_GUID(CLSID_Ellipses,0xF0270B21,0x879A,0x4b96,0xBA,0x43,0x95,0xB4,0x02,0x75,0x4F,0xC0);

#ifdef __cplusplus

class DECLSPEC_UUID("F0270B21-879A-4b96-BA43-95B402754FC0")
Ellipses;
#endif

DEFINE_GUID(CLSID__Ellipse,0x209A2979,0x6F0C,0x4d27,0xB1,0x57,0xCF,0xC7,0x4B,0xA5,0x3F,0x14);

#ifdef __cplusplus

class DECLSPEC_UUID("209A2979-6F0C-4d27-B157-CFC74BA53F14")
_Ellipse;
#endif

DEFINE_GUID(CLSID_EllipseArcs,0xA1471F9B,0x32BE,0x4e66,0xBF,0x1C,0xF8,0x32,0x55,0xC7,0xEC,0x6D);

#ifdef __cplusplus

class DECLSPEC_UUID("A1471F9B-32BE-4e66-BF1C-F83255C7EC6D")
EllipseArcs;
#endif

DEFINE_GUID(CLSID__EllipseArc,0xD79ADD45,0xA3FD,0x4376,0xA5,0xE4,0xBD,0x6E,0x31,0xC1,0x93,0xC4);

#ifdef __cplusplus

class DECLSPEC_UUID("D79ADD45-A3FD-4376-A5E4-BD6E31C193C4")
_EllipseArc;
#endif

DEFINE_GUID(CLSID__Point,0xAF3188C2,0xCD4D,0x45f6,0xBC,0xB2,0x5F,0x44,0xF3,0x02,0x00,0xD1);

#ifdef __cplusplus

class DECLSPEC_UUID("AF3188C2-CD4D-45f6-BCB2-5F44F30200D1")
_Point;
#endif

DEFINE_GUID(CLSID_Points,0x4B8726C5,0xE743,0x48a5,0x9C,0x5F,0x50,0x6F,0x5D,0x57,0xDB,0x7F);

#ifdef __cplusplus

class DECLSPEC_UUID("4B8726C5-E743-48a5-9C5F-506F5D57DB7F")
Points;
#endif

DEFINE_GUID(CLSID__Line,0xBCA8BBB8,0xCCAA,0x4865,0x91,0x8F,0x7D,0x03,0x5B,0xD9,0xE0,0xD4);

#ifdef __cplusplus

class DECLSPEC_UUID("BCA8BBB8-CCAA-4865-918F-7D035BD9E0D4")
_Line;
#endif

DEFINE_GUID(CLSID_Lines,0x431C0844,0x4C3E,0x4110,0x8E,0x16,0x2B,0x95,0x2A,0xA0,0x52,0x1D);

#ifdef __cplusplus

class DECLSPEC_UUID("431C0844-4C3E-4110-8E16-2B952AA0521D")
Lines;
#endif

DEFINE_GUID(CLSID__Bezier,0xBC4A8E55,0xC5C4,0x405c,0x9B,0x78,0xAA,0x36,0xCA,0x5B,0x11,0x56);

#ifdef __cplusplus

class DECLSPEC_UUID("BC4A8E55-C5C4-405c-9B78-AA36CA5B1156")
_Bezier;
#endif

DEFINE_GUID(CLSID_Beziers,0xD744D5EE,0xE926,0x45b3,0xB6,0x22,0xF7,0xB5,0x43,0xA2,0xD0,0x66);

#ifdef __cplusplus

class DECLSPEC_UUID("D744D5EE-E926-45b3-B622-F7B543A2D066")
Beziers;
#endif

DEFINE_GUID(CLSID_Rectangles,0xFB692157,0x2A44,0x4313,0xBE,0x9B,0x5C,0x7A,0xD7,0x0D,0xB6,0x33);

#ifdef __cplusplus

class DECLSPEC_UUID("FB692157-2A44-4313-BE9B-5C7AD70DB633")
Rectangles;
#endif

DEFINE_GUID(CLSID__Rectangle,0x28C7998F,0xBB9D,0x4edc,0x90,0xEF,0xD8,0x10,0xF4,0x04,0x81,0xB7);

#ifdef __cplusplus

class DECLSPEC_UUID("28C7998F-BB9D-4edc-90EF-D810F40481B7")
_Rectangle;
#endif

DEFINE_GUID(CLSID_RegularPolygons,0xC9204FDB,0x09B4,0x443e,0x90,0x29,0xFE,0x61,0x7C,0xEE,0x91,0x06);

#ifdef __cplusplus

class DECLSPEC_UUID("C9204FDB-09B4-443e-9029-FE617CEE9106")
RegularPolygons;
#endif

DEFINE_GUID(CLSID_RegularPolygon,0x11D9782E,0x11E1,0x471b,0x82,0xD1,0x86,0x35,0xB0,0x86,0x13,0x39);

#ifdef __cplusplus

class DECLSPEC_UUID("11D9782E-11E1-471b-82D1-8635B0861339")
RegularPolygon;
#endif

DEFINE_GUID(CLSID_InsertionObjects,0x8095A5E3,0x86CB,0x4b66,0xAA,0x45,0xE7,0x1E,0x1E,0x88,0x83,0xA9);

#ifdef __cplusplus

class DECLSPEC_UUID("8095A5E3-86CB-4b66-AA45-E71E1E8883A9")
InsertionObjects;
#endif

DEFINE_GUID(CLSID_InsertionView,0xA4E92DC4,0x9804,0x4381,0x9B,0x54,0x8E,0x20,0x30,0xC5,0x0E,0x6D);

#ifdef __cplusplus

class DECLSPEC_UUID("A4E92DC4-9804-4381-9B54-8E2030C50E6D")
InsertionView;
#endif

DEFINE_GUID(CLSID_InsertionDefinition,0x30D92D83,0xD913,0x4898,0x85,0xA4,0xA6,0xDC,0xEF,0x20,0x07,0xCA);

#ifdef __cplusplus

class DECLSPEC_UUID("30D92D83-D913-4898-85A4-A6DCEF2007CA")
InsertionDefinition;
#endif

DEFINE_GUID(CLSID_PolyLine2D,0xFFC3A04A,0xC9BD,0x44c2,0x94,0x85,0x41,0xF4,0xA6,0x55,0x65,0x3C);

#ifdef __cplusplus

class DECLSPEC_UUID("FFC3A04A-C9BD-44c2-9485-41F4A655653C")
PolyLine2D;
#endif

DEFINE_GUID(CLSID_PolyLines2D,0x6A3B4FB6,0xFB8D,0x40d2,0xB3,0xCA,0x2D,0xFE,0x4F,0xF7,0x25,0xB5);

#ifdef __cplusplus

class DECLSPEC_UUID("6A3B4FB6-FB8D-40d2-B3CA-2DFE4FF725B5")
PolyLines2D;
#endif

DEFINE_GUID(CLSID_Equidistants,0x487511E6,0xE3F4,0x4f7c,0x92,0x17,0xC4,0x85,0xB1,0x46,0x3A,0x61);

#ifdef __cplusplus

class DECLSPEC_UUID("487511E6-E3F4-4f7c-9217-C485B1463A61")
Equidistants;
#endif

DEFINE_GUID(CLSID__Equidistant,0x5EB10E2C,0x0D66,0x4ac2,0x96,0x19,0x93,0xB4,0x37,0xCB,0xEC,0xE7);

#ifdef __cplusplus

class DECLSPEC_UUID("5EB10E2C-0D66-4ac2-9619-93B437CBECE7")
_Equidistant;
#endif

DEFINE_GUID(CLSID__Nurbs,0xA71C349D,0xBAFC,0x498c,0xAC,0x18,0xB3,0x72,0xCB,0x2F,0xD4,0xB1);

#ifdef __cplusplus

class DECLSPEC_UUID("A71C349D-BAFC-498c-AC18-B372CB2FD4B1")
_Nurbs;
#endif

DEFINE_GUID(CLSID_Nurbses,0x51E9EF87,0xE12D,0x48af,0x9E,0x0F,0x35,0xA2,0x79,0x87,0x88,0x31);

#ifdef __cplusplus

class DECLSPEC_UUID("51E9EF87-E12D-48af-9E0F-35A279878831")
Nurbses;
#endif

DEFINE_GUID(CLSID_CentreMarkers,0x80178C38,0xD3BE,0x4e6b,0x9D,0x22,0xAA,0x43,0xD8,0xDA,0x2C,0x46);

#ifdef __cplusplus

class DECLSPEC_UUID("80178C38-D3BE-4e6b-9D22-AA43D8DA2C46")
CentreMarkers;
#endif

DEFINE_GUID(CLSID_CentreMarker,0xF6E745A9,0xDB3A,0x40f8,0x93,0x18,0xD8,0xA5,0x3D,0x04,0xDF,0x16);

#ifdef __cplusplus

class DECLSPEC_UUID("F6E745A9-DB3A-40f8-9318-D8A53D04DF16")
CentreMarker;
#endif

DEFINE_GUID(CLSID_RemoteElement,0x79A4CAF1,0xF75C,0x47d5,0xA3,0xAF,0x65,0xD8,0xB9,0x5A,0xD1,0x7A);

#ifdef __cplusplus

class DECLSPEC_UUID("79A4CAF1-F75C-47d5-A3AF-65D8B95AD17A")
RemoteElement;
#endif

DEFINE_GUID(CLSID_RemoteElements,0x8B0949ED,0x637A,0x49be,0x96,0xD4,0x95,0xCD,0x37,0xA8,0x0F,0xCC);

#ifdef __cplusplus

class DECLSPEC_UUID("8B0949ED-637A-49be-96D4-95CD37A80FCC")
RemoteElements;
#endif

DEFINE_GUID(CLSID__Attribute,0xAEC9CA96,0xA058,0x49df,0xB5,0x66,0x19,0x5C,0x82,0xFE,0x35,0x76);

#ifdef __cplusplus

class DECLSPEC_UUID("AEC9CA96-A058-49df-B566-195C82FE3576")
_Attribute;
#endif

DEFINE_GUID(CLSID__ColumnInfo,0xA92D056B,0x1D1F,0x4c2b,0x97,0xE9,0x77,0xA5,0xF8,0x37,0xA6,0x8A);

#ifdef __cplusplus

class DECLSPEC_UUID("A92D056B-1D1F-4c2b-97E9-77A5F837A68A")
_ColumnInfo;
#endif

DEFINE_GUID(CLSID__AttributeType,0x949BD5DD,0xA728,0x4009,0x81,0x76,0x22,0x2D,0xFE,0xC7,0xB7,0xFC);

#ifdef __cplusplus

class DECLSPEC_UUID("949BD5DD-A728-4009-8176-222DFEC7B7FC")
_AttributeType;
#endif

DEFINE_GUID(CLSID_AxisLine,0x325C006C,0xC993,0x4656,0xBC,0x1A,0xDE,0x65,0xD8,0x40,0x15,0x27);

#ifdef __cplusplus

class DECLSPEC_UUID("325C006C-C993-4656-BC1A-DE65D8401527")
AxisLine;
#endif

DEFINE_GUID(CLSID_AxisLines,0x78F95449,0x3A99,0x4b3e,0x86,0xB5,0xC7,0xBC,0x9D,0xDD,0xF0,0x74);

#ifdef __cplusplus

class DECLSPEC_UUID("78F95449-3A99-4b3e-86B5-C7BC9DDDF074")
AxisLines;
#endif

DEFINE_GUID(CLSID_Variable7,0xDF582F9B,0xE350,0x4ef8,0xA6,0xEA,0x5D,0x8D,0x32,0xD4,0x3C,0xA1);

#ifdef __cplusplus

class DECLSPEC_UUID("DF582F9B-E350-4ef8-A6EA-5D8D32D43CA1")
Variable7;
#endif

DEFINE_GUID(CLSID_InsertionParameters,0x863D0E6D,0xC8E0,0x4e49,0x88,0xB7,0xDA,0xB4,0x23,0xCD,0xA1,0xC3);

#ifdef __cplusplus

class DECLSPEC_UUID("863D0E6D-C8E0-4e49-88B7-DAB423CDA1C3")
InsertionParameters;
#endif

DEFINE_GUID(CLSID_DrawingGroup,0xC0A36437,0x0D32,0x4d41,0x9C,0x3F,0x0A,0x70,0xD6,0x6A,0x4C,0x03);

#ifdef __cplusplus

class DECLSPEC_UUID("C0A36437-0D32-4d41-9C3F-0A70D66A4C03")
DrawingGroup;
#endif

DEFINE_GUID(CLSID_DrawingGroups,0xABBC0387,0x2E69,0x4575,0xBA,0xD1,0xA9,0x7B,0x02,0xB4,0x18,0xB2);

#ifdef __cplusplus

class DECLSPEC_UUID("ABBC0387-2E69-4575-BAD1-A97B02B418B2")
DrawingGroups;
#endif

DEFINE_GUID(CLSID__Hatch,0x7627E43F,0x0B5A,0x410f,0x94,0x56,0x81,0xE7,0xC1,0x30,0xAC,0x5B);

#ifdef __cplusplus

class DECLSPEC_UUID("7627E43F-0B5A-410f-9456-81E7C130AC5B")
_Hatch;
#endif

DEFINE_GUID(CLSID__Colouring,0xE51E0641,0x4F58,0x48a1,0x83,0xD8,0xF7,0x73,0x55,0xDB,0x4E,0x5E);

#ifdef __cplusplus

class DECLSPEC_UUID("E51E0641-4F58-48a1-83D8-F77355DB4E5E")
_Colouring;
#endif

DEFINE_GUID(CLSID_Hatches,0x1044ADC3,0xE779,0x4c48,0xA4,0xDD,0xA0,0x0B,0xEF,0x93,0x41,0xD6);

#ifdef __cplusplus

class DECLSPEC_UUID("1044ADC3-E779-4c48-A4DD-A00BEF9341D6")
Hatches;
#endif

DEFINE_GUID(CLSID_Colourings,0xCAA76116,0x56AD,0x4466,0x99,0x51,0xC1,0x6C,0x10,0xD4,0x3C,0xE0);

#ifdef __cplusplus

class DECLSPEC_UUID("CAA76116-56AD-4466-9951-C16C10D43CE0")
Colourings;
#endif

DEFINE_GUID(CLSID__SpecRough,0x11BA32BC,0xD5A2,0x474b,0xBA,0x91,0xE3,0x8E,0xE0,0xA2,0xC5,0x67);

#ifdef __cplusplus

class DECLSPEC_UUID("11BA32BC-D5A2-474b-BA91-E38EE0A2C567")
_SpecRough;
#endif

DEFINE_GUID(CLSID_TechnicalDemand,0x281276EB,0xC88D,0x4f54,0x9C,0x13,0xE6,0xDD,0xB8,0xC2,0x53,0x0D);

#ifdef __cplusplus

class DECLSPEC_UUID("281276EB-C88D-4f54-9C13-E6DDB8C2530D")
TechnicalDemand;
#endif

DEFINE_GUID(CLSID__Raster,0xACAB7ABA,0xEC2F,0x4e2b,0xA7,0x42,0x19,0xBB,0x5B,0xC4,0x44,0x1A);

#ifdef __cplusplus

class DECLSPEC_UUID("ACAB7ABA-EC2F-4e2b-A742-19BB5BC4441A")
_Raster;
#endif

DEFINE_GUID(CLSID_Rasters,0xF90677D1,0x9ED2,0x4bdf,0x8C,0x68,0x6B,0x24,0x1B,0x2A,0x09,0xF2);

#ifdef __cplusplus

class DECLSPEC_UUID("F90677D1-9ED2-4bdf-8C68-6B241B2A09F2")
Rasters;
#endif

DEFINE_GUID(CLSID_OleDrawingObject,0xC5D9DA68,0x4574,0x40d5,0xB9,0x2A,0x83,0x8C,0x23,0x5F,0x19,0x03);

#ifdef __cplusplus

class DECLSPEC_UUID("C5D9DA68-4574-40d5-B92A-838C235F1903")
OleDrawingObject;
#endif

DEFINE_GUID(CLSID_OleDrawingObjects,0x41E89E17,0x2FB8,0x4e08,0xA0,0x1A,0xCF,0x9B,0xB5,0x24,0xA6,0xA2);

#ifdef __cplusplus

class DECLSPEC_UUID("41E89E17-2FB8-4e08-A01A-CF9BB524A6A2")
OleDrawingObjects;
#endif

DEFINE_GUID(CLSID_SelectionManager,0x45615DBB,0x7842,0x436c,0x9B,0x84,0x06,0x3A,0x13,0xC0,0x61,0xE8);

#ifdef __cplusplus

class DECLSPEC_UUID("45615DBB-7842-436c-9B84-063A13C061E8")
SelectionManager;
#endif

DEFINE_GUID(CLSID_ChooseManager,0x495C89BD,0x48C4,0x40b3,0x98,0x29,0x4E,0x98,0x2F,0x19,0x1B,0xA2);

#ifdef __cplusplus

class DECLSPEC_UUID("495C89BD-48C4-40b3-9829-4E982F191BA2")
ChooseManager;
#endif

DEFINE_GUID(CLSID_SurfacesIntersectionCurve,0xCE94C01B,0xED23,0x43fc,0x98,0xBB,0xD7,0xBD,0x85,0xEE,0x0D,0x47);

#ifdef __cplusplus

class DECLSPEC_UUID("CE94C01B-ED23-43fc-98BB-D7BD85EE0D47")
SurfacesIntersectionCurve;
#endif

DEFINE_GUID(CLSID_SurfacesIntersectionCurves,0xBDD167C1,0x8439,0x412e,0x8A,0x41,0x4A,0x01,0x57,0x6C,0xBC,0x79);

#ifdef __cplusplus

class DECLSPEC_UUID("BDD167C1-8439-412e-8A41-4A01576CBC79")
SurfacesIntersectionCurves;
#endif

#ifndef __IModelCurve3D_INTERFACE_DEFINED__
#define __IModelCurve3D_INTERFACE_DEFINED__

/* interface IModelCurve3D */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IModelCurve3D,0xEB4AB3A9,0x8E01,0x4952,0x91,0x19,0xF8,0xD0,0x9D,0x95,0x72,0xD5);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("EB4AB3A9-8E01-4952-9119-F8D09D9572D5")
    IModelCurve3D : public IDispatch
    {
    public:
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexVisible( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexVisible( 
            /* [in] */ VARIANT_BOOL Value) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VertexStyle( 
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *Style) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VertexStyle( 
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum Style) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EdgesStyle( 
            /* [retval][out] */ /* external definition not present */ ksCurveStyleEnum __RPC_FAR *Style) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_EdgesStyle( 
            /* [in] */ /* external definition not present */ ksCurveStyleEnum Style) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IModelCurve3DVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IModelCurve3D __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IModelCurve3D __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IModelCurve3D __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexVisible )( 
            IModelCurve3D __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexVisible )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Value);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_VertexStyle )( 
            IModelCurve3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *Style);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_VertexStyle )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum Style);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EdgesStyle )( 
            IModelCurve3D __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ksCurveStyleEnum __RPC_FAR *Style);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_EdgesStyle )( 
            IModelCurve3D __RPC_FAR * This,
            /* [in] */ /* external definition not present */ ksCurveStyleEnum Style);
        
        END_INTERFACE
    } IModelCurve3DVtbl;

    interface IModelCurve3D
    {
        CONST_VTBL struct IModelCurve3DVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IModelCurve3D_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IModelCurve3D_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IModelCurve3D_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IModelCurve3D_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IModelCurve3D_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IModelCurve3D_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IModelCurve3D_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IModelCurve3D_get_VertexVisible(This,Value)	\
    (This)->lpVtbl -> get_VertexVisible(This,Value)

#define IModelCurve3D_put_VertexVisible(This,Value)	\
    (This)->lpVtbl -> put_VertexVisible(This,Value)

#define IModelCurve3D_get_VertexStyle(This,Style)	\
    (This)->lpVtbl -> get_VertexStyle(This,Style)

#define IModelCurve3D_put_VertexStyle(This,Style)	\
    (This)->lpVtbl -> put_VertexStyle(This,Style)

#define IModelCurve3D_get_EdgesStyle(This,Style)	\
    (This)->lpVtbl -> get_EdgesStyle(This,Style)

#define IModelCurve3D_put_EdgesStyle(This,Style)	\
    (This)->lpVtbl -> put_EdgesStyle(This,Style)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelCurve3D_get_VertexVisible_Proxy( 
    IModelCurve3D __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *Value);


void __RPC_STUB IModelCurve3D_get_VertexVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IModelCurve3D_put_VertexVisible_Proxy( 
    IModelCurve3D __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Value);


void __RPC_STUB IModelCurve3D_put_VertexVisible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelCurve3D_get_VertexStyle_Proxy( 
    IModelCurve3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksAnnotationSymbolEnum __RPC_FAR *Style);


void __RPC_STUB IModelCurve3D_get_VertexStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IModelCurve3D_put_VertexStyle_Proxy( 
    IModelCurve3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksAnnotationSymbolEnum Style);


void __RPC_STUB IModelCurve3D_put_VertexStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IModelCurve3D_get_EdgesStyle_Proxy( 
    IModelCurve3D __RPC_FAR * This,
    /* [retval][out] */ /* external definition not present */ ksCurveStyleEnum __RPC_FAR *Style);


void __RPC_STUB IModelCurve3D_get_EdgesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IModelCurve3D_put_EdgesStyle_Proxy( 
    IModelCurve3D __RPC_FAR * This,
    /* [in] */ /* external definition not present */ ksCurveStyleEnum Style);


void __RPC_STUB IModelCurve3D_put_EdgesStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IModelCurve3D_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID__Stamp,0x79CB82D9,0x6EA1,0x49d2,0x84,0x79,0xC7,0x00,0x5D,0x87,0xEC,0x77);

#ifdef __cplusplus

class DECLSPEC_UUID("79CB82D9-6EA1-49d2-8479-C7005D87EC77")
_Stamp;
#endif

DEFINE_GUID(CLSID_WaveLine,0x1D709F94,0xC02D,0x4dad,0x8E,0x74,0xB9,0xE7,0x43,0x4A,0x8E,0x62);

#ifdef __cplusplus

class DECLSPEC_UUID("1D709F94-C02D-4dad-8E74-B9E7434A8E62")
WaveLine;
#endif

DEFINE_GUID(CLSID_WaveLines,0xA5B25423,0xBA42,0x47b3,0xB0,0xBD,0xAF,0x8C,0xC9,0x11,0xB7,0x67);

#ifdef __cplusplus

class DECLSPEC_UUID("A5B25423-BA42-47b3-B0BD-AF8CC911B767")
WaveLines;
#endif

DEFINE_GUID(CLSID_BrokenLine,0x1C337EDB,0xF786,0x4d56,0x8B,0xD2,0x06,0xD9,0x27,0x17,0x6C,0x32);

#ifdef __cplusplus

class DECLSPEC_UUID("1C337EDB-F786-4d56-8BD2-06D927176C32")
BrokenLine;
#endif

DEFINE_GUID(CLSID_BrokenLines,0x31314843,0x3608,0x4b45,0x8F,0x0A,0xDD,0xBC,0x30,0x82,0x26,0xC6);

#ifdef __cplusplus

class DECLSPEC_UUID("31314843-3608-4b45-8F0A-DDBC308226C6")
BrokenLines;
#endif

#ifndef __IPropertyStyleList_INTERFACE_DEFINED__
#define __IPropertyStyleList_INTERFACE_DEFINED__

/* interface IPropertyStyleList */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IPropertyStyleList,0xB2431C46,0x9A35,0x494b,0xA9,0x58,0xD9,0x09,0x8F,0x82,0xC3,0xFA);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B2431C46-9A35-494b-A958-D9098F82C3FA")
    IPropertyStyleList : public IPropertyControl
    {
    public:
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT Styles,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *count) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearList( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes) = 0;
        
        virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Find( 
            /* [in] */ long Val,
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentIndex( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentIndex( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AnotherStyleBtnEnable( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AnotherStyleBtnEnable( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPropertyStyleListVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IPropertyStyleList __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IPropertyStyleList __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Visible )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Visible )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ControlType )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ ControlTypeEnum __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Id )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [defaultvalue][in] */ long NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Id )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Enable )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [defaultvalue][in] */ VARIANT_BOOL NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Enable )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ VARIANT NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameVisibility )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ /* external definition not present */ PropertyControlNameVisibility NewVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameVisibility )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ PropertyControlNameVisibility __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Hint )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Hint )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Tips )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [defaultvalue][in] */ BSTR NewText);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Tips )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ VARIANT Styles,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *count);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ClearList )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);
        
        /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Find )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ long Val,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CurrentIndex )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CurrentIndex )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AnotherStyleBtnEnable )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AnotherStyleBtnEnable )( 
            IPropertyStyleList __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IPropertyStyleListVtbl;

    interface IPropertyStyleList
    {
        CONST_VTBL struct IPropertyStyleListVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPropertyStyleList_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPropertyStyleList_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPropertyStyleList_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPropertyStyleList_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPropertyStyleList_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPropertyStyleList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPropertyStyleList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPropertyStyleList_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IPropertyStyleList_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IPropertyStyleList_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IPropertyStyleList_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IPropertyStyleList_put_Visible(This,PVal)	\
    (This)->lpVtbl -> put_Visible(This,PVal)

#define IPropertyStyleList_get_Visible(This,PVal)	\
    (This)->lpVtbl -> get_Visible(This,PVal)

#define IPropertyStyleList_put_Name(This,NewText)	\
    (This)->lpVtbl -> put_Name(This,NewText)

#define IPropertyStyleList_get_Name(This,PVal)	\
    (This)->lpVtbl -> get_Name(This,PVal)

#define IPropertyStyleList_get_ControlType(This,PVal)	\
    (This)->lpVtbl -> get_ControlType(This,PVal)

#define IPropertyStyleList_put_Id(This,NewVal)	\
    (This)->lpVtbl -> put_Id(This,NewVal)

#define IPropertyStyleList_get_Id(This,PVal)	\
    (This)->lpVtbl -> get_Id(This,PVal)

#define IPropertyStyleList_put_Enable(This,NewVal)	\
    (This)->lpVtbl -> put_Enable(This,NewVal)

#define IPropertyStyleList_get_Enable(This,PVal)	\
    (This)->lpVtbl -> get_Enable(This,PVal)

#define IPropertyStyleList_put_Value(This,NewVal)	\
    (This)->lpVtbl -> put_Value(This,NewVal)

#define IPropertyStyleList_get_Value(This,PVal)	\
    (This)->lpVtbl -> get_Value(This,PVal)

#define IPropertyStyleList_put_NameVisibility(This,NewVal)	\
    (This)->lpVtbl -> put_NameVisibility(This,NewVal)

#define IPropertyStyleList_get_NameVisibility(This,PVal)	\
    (This)->lpVtbl -> get_NameVisibility(This,PVal)

#define IPropertyStyleList_put_Hint(This,NewText)	\
    (This)->lpVtbl -> put_Hint(This,NewText)

#define IPropertyStyleList_get_Hint(This,PVal)	\
    (This)->lpVtbl -> get_Hint(This,PVal)

#define IPropertyStyleList_put_Tips(This,NewText)	\
    (This)->lpVtbl -> put_Tips(This,NewText)

#define IPropertyStyleList_get_Tips(This,PVal)	\
    (This)->lpVtbl -> get_Tips(This,PVal)


#define IPropertyStyleList_Add(This,Styles,PRes)	\
    (This)->lpVtbl -> Add(This,Styles,PRes)

#define IPropertyStyleList_get_Count(This,count)	\
    (This)->lpVtbl -> get_Count(This,count)

#define IPropertyStyleList_ClearList(This,PRes)	\
    (This)->lpVtbl -> ClearList(This,PRes)

#define IPropertyStyleList_Find(This,Val,PVal)	\
    (This)->lpVtbl -> Find(This,Val,PVal)

#define IPropertyStyleList_put_CurrentIndex(This,Val)	\
    (This)->lpVtbl -> put_CurrentIndex(This,Val)

#define IPropertyStyleList_get_CurrentIndex(This,PVal)	\
    (This)->lpVtbl -> get_CurrentIndex(This,PVal)

#define IPropertyStyleList_put_AnotherStyleBtnEnable(This,Val)	\
    (This)->lpVtbl -> put_AnotherStyleBtnEnable(This,Val)

#define IPropertyStyleList_get_AnotherStyleBtnEnable(This,PVal)	\
    (This)->lpVtbl -> get_AnotherStyleBtnEnable(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_Add_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [in] */ VARIANT Styles,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IPropertyStyleList_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_get_Count_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *count);


void __RPC_STUB IPropertyStyleList_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_ClearList_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PRes);


void __RPC_STUB IPropertyStyleList_ClearList_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_Find_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [in] */ long Val,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyStyleList_Find_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_put_CurrentIndex_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB IPropertyStyleList_put_CurrentIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_get_CurrentIndex_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IPropertyStyleList_get_CurrentIndex_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_put_AnotherStyleBtnEnable_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IPropertyStyleList_put_AnotherStyleBtnEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IPropertyStyleList_get_AnotherStyleBtnEnable_Proxy( 
    IPropertyStyleList __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IPropertyStyleList_get_AnotherStyleBtnEnable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPropertyStyleList_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_PropertyStyleList,0xC2792BEE,0x4F86,0x4610,0x90,0x8E,0x8E,0x4B,0x31,0xB6,0x03,0xFC);

#ifdef __cplusplus

class DECLSPEC_UUID("C2792BEE-4F86-4610-908E-8E4B31B603FC")
PropertyStyleList;
#endif

DEFINE_GUID(CLSID__CopyObjectParam,0x6DE8A8F7,0x28C6,0x42c7,0xA5,0x79,0xC2,0x4B,0xDF,0xA6,0xB7,0x3F);

#ifdef __cplusplus

class DECLSPEC_UUID("6DE8A8F7-28C6-42c7-A579-C24BDFA6B73F")
_CopyObjectParam;
#endif

DEFINE_GUID(CLSID_CurveCopyObjectParam,0x07BD4468,0xD478,0x447c,0x8F,0x20,0x1C,0x6E,0x2A,0xBB,0xD9,0xC2);

#ifdef __cplusplus

class DECLSPEC_UUID("07BD4468-D478-447c-8F20-1C6E2ABBD9C2")
CurveCopyObjectParam;
#endif

DEFINE_GUID(CLSID_CircleCopyObjectParam,0x6F7F48FC,0x1DA4,0x4689,0x9A,0xE3,0x69,0x80,0x4B,0x84,0x2D,0x1B);

#ifdef __cplusplus

class DECLSPEC_UUID("6F7F48FC-1DA4-4689-9AE3-69804B842D1B")
CircleCopyObjectParam;
#endif

#ifndef __ICircularCopyObjectParam_INTERFACE_DEFINED__
#define __ICircularCopyObjectParam_INTERFACE_DEFINED__

/* interface ICircularCopyObjectParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_ICircularCopyObjectParam,0xA5B8E337,0xEE84,0x4eec,0x82,0x35,0xA8,0x12,0xFD,0xD6,0xC2,0xDE);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A5B8E337-EE84-4eec-8235-A812FDD6C2DE")
    ICircularCopyObjectParam : public ICopyObjectParam
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Radius( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Radius( 
            /* [retval][out] */ double __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step1( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepFactor1( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepFactor1( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count1( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count1( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepFactor2( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepFactor2( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count2( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count2( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SaveCentreCopy( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SaveCentreCopy( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_TurnObject( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_TurnObject( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICircularCopyObjectParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICircularCopyObjectParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICircularCopyObjectParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XOld )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XOld )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YOld )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YOld )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XNew )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XNew )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YNew )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YNew )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeCopy )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeCopy )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecificationObjectCopy )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationObjectCopy )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Radius )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Radius )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step1 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step1 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepFactor1 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepFactor1 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count1 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count1 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepFactor2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepFactor2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count2 )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SaveCentreCopy )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SaveCentreCopy )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_TurnObject )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_TurnObject )( 
            ICircularCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } ICircularCopyObjectParamVtbl;

    interface ICircularCopyObjectParam
    {
        CONST_VTBL struct ICircularCopyObjectParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICircularCopyObjectParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICircularCopyObjectParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICircularCopyObjectParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICircularCopyObjectParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICircularCopyObjectParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICircularCopyObjectParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICircularCopyObjectParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICircularCopyObjectParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define ICircularCopyObjectParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define ICircularCopyObjectParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define ICircularCopyObjectParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define ICircularCopyObjectParam_put_XOld(This,Val)	\
    (This)->lpVtbl -> put_XOld(This,Val)

#define ICircularCopyObjectParam_get_XOld(This,PVal)	\
    (This)->lpVtbl -> get_XOld(This,PVal)

#define ICircularCopyObjectParam_put_YOld(This,Val)	\
    (This)->lpVtbl -> put_YOld(This,Val)

#define ICircularCopyObjectParam_get_YOld(This,PVal)	\
    (This)->lpVtbl -> get_YOld(This,PVal)

#define ICircularCopyObjectParam_put_XNew(This,Val)	\
    (This)->lpVtbl -> put_XNew(This,Val)

#define ICircularCopyObjectParam_get_XNew(This,PVal)	\
    (This)->lpVtbl -> get_XNew(This,PVal)

#define ICircularCopyObjectParam_put_YNew(This,Val)	\
    (This)->lpVtbl -> put_YNew(This,Val)

#define ICircularCopyObjectParam_get_YNew(This,PVal)	\
    (This)->lpVtbl -> get_YNew(This,PVal)

#define ICircularCopyObjectParam_put_Scale(This,Val)	\
    (This)->lpVtbl -> put_Scale(This,Val)

#define ICircularCopyObjectParam_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define ICircularCopyObjectParam_put_Angle(This,Val)	\
    (This)->lpVtbl -> put_Angle(This,Val)

#define ICircularCopyObjectParam_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define ICircularCopyObjectParam_put_AttributeCopy(This,Val)	\
    (This)->lpVtbl -> put_AttributeCopy(This,Val)

#define ICircularCopyObjectParam_get_AttributeCopy(This,PVal)	\
    (This)->lpVtbl -> get_AttributeCopy(This,PVal)

#define ICircularCopyObjectParam_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define ICircularCopyObjectParam_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define ICircularCopyObjectParam_put_SpecificationObjectCopy(This,Val)	\
    (This)->lpVtbl -> put_SpecificationObjectCopy(This,Val)

#define ICircularCopyObjectParam_get_SpecificationObjectCopy(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationObjectCopy(This,PVal)


#define ICircularCopyObjectParam_put_Radius(This,Val)	\
    (This)->lpVtbl -> put_Radius(This,Val)

#define ICircularCopyObjectParam_get_Radius(This,Val)	\
    (This)->lpVtbl -> get_Radius(This,Val)

#define ICircularCopyObjectParam_put_Step1(This,Val)	\
    (This)->lpVtbl -> put_Step1(This,Val)

#define ICircularCopyObjectParam_get_Step1(This,PVal)	\
    (This)->lpVtbl -> get_Step1(This,PVal)

#define ICircularCopyObjectParam_put_StepFactor1(This,Val)	\
    (This)->lpVtbl -> put_StepFactor1(This,Val)

#define ICircularCopyObjectParam_get_StepFactor1(This,PVal)	\
    (This)->lpVtbl -> get_StepFactor1(This,PVal)

#define ICircularCopyObjectParam_put_Count1(This,Val)	\
    (This)->lpVtbl -> put_Count1(This,Val)

#define ICircularCopyObjectParam_get_Count1(This,Val)	\
    (This)->lpVtbl -> get_Count1(This,Val)

#define ICircularCopyObjectParam_put_Angle2(This,Val)	\
    (This)->lpVtbl -> put_Angle2(This,Val)

#define ICircularCopyObjectParam_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define ICircularCopyObjectParam_put_Step2(This,Val)	\
    (This)->lpVtbl -> put_Step2(This,Val)

#define ICircularCopyObjectParam_get_Step2(This,PVal)	\
    (This)->lpVtbl -> get_Step2(This,PVal)

#define ICircularCopyObjectParam_put_StepFactor2(This,Val)	\
    (This)->lpVtbl -> put_StepFactor2(This,Val)

#define ICircularCopyObjectParam_get_StepFactor2(This,PVal)	\
    (This)->lpVtbl -> get_StepFactor2(This,PVal)

#define ICircularCopyObjectParam_put_Count2(This,Val)	\
    (This)->lpVtbl -> put_Count2(This,Val)

#define ICircularCopyObjectParam_get_Count2(This,PVal)	\
    (This)->lpVtbl -> get_Count2(This,PVal)

#define ICircularCopyObjectParam_put_SaveCentreCopy(This,Val)	\
    (This)->lpVtbl -> put_SaveCentreCopy(This,Val)

#define ICircularCopyObjectParam_get_SaveCentreCopy(This,PVal)	\
    (This)->lpVtbl -> get_SaveCentreCopy(This,PVal)

#define ICircularCopyObjectParam_put_TurnObject(This,Val)	\
    (This)->lpVtbl -> put_TurnObject(This,Val)

#define ICircularCopyObjectParam_get_TurnObject(This,PVal)	\
    (This)->lpVtbl -> get_TurnObject(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_Radius_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircularCopyObjectParam_put_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_Radius_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Val);


void __RPC_STUB ICircularCopyObjectParam_get_Radius_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_Step1_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircularCopyObjectParam_put_Step1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_Step1_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_Step1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_StepFactor1_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICircularCopyObjectParam_put_StepFactor1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_StepFactor1_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_StepFactor1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_Count1_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ICircularCopyObjectParam_put_Count1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_Count1_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB ICircularCopyObjectParam_get_Count1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_Angle2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircularCopyObjectParam_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_Angle2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_Step2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB ICircularCopyObjectParam_put_Step2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_Step2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_Step2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_StepFactor2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICircularCopyObjectParam_put_StepFactor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_StepFactor2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_StepFactor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_Count2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB ICircularCopyObjectParam_put_Count2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_Count2_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_Count2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_SaveCentreCopy_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICircularCopyObjectParam_put_SaveCentreCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_SaveCentreCopy_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_SaveCentreCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_put_TurnObject_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB ICircularCopyObjectParam_put_TurnObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICircularCopyObjectParam_get_TurnObject_Proxy( 
    ICircularCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB ICircularCopyObjectParam_get_TurnObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICircularCopyObjectParam_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_CircularCopyObjectParam,0xFECBF8C1,0xD8B4,0x437f,0x8A,0xA3,0xDC,0x63,0x62,0xC2,0xE5,0x1E);

#ifdef __cplusplus

class DECLSPEC_UUID("FECBF8C1-D8B4-437f-8AA3-DC6362C2E51E")
CircularCopyObjectParam;
#endif

#ifndef __IMeshCopyObjectParam_INTERFACE_DEFINED__
#define __IMeshCopyObjectParam_INTERFACE_DEFINED__

/* interface IMeshCopyObjectParam */
/* [object][helpcontext][helpstring][nonextensible][unique][dual][oleautomation][uuid] */ 


DEFINE_GUID(IID_IMeshCopyObjectParam,0x592AB214,0xA8CF,0x462e,0xAC,0xD5,0x52,0x88,0x39,0x11,0x33,0x38);

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("592AB214-A8CF-462e-ACD5-528839113338")
    IMeshCopyObjectParam : public ICopyObjectParam
    {
    public:
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle1( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle1( 
            /* [retval][out] */ double __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step1( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step1( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepFactor1( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepFactor1( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count1( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count1( 
            /* [retval][out] */ long __RPC_FAR *Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Angle2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Angle2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Step2( 
            /* [in] */ double Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Step2( 
            /* [retval][out] */ double __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StepFactor2( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StepFactor2( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Count2( 
            /* [in] */ long Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count2( 
            /* [retval][out] */ long __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SaveCornersCopy( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SaveCornersCopy( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
        virtual /* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SaveCentreCopy( 
            /* [in] */ VARIANT_BOOL Val) = 0;
        
        virtual /* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SaveCentreCopy( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMeshCopyObjectParamVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMeshCopyObjectParam __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMeshCopyObjectParam __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Parent )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IKompasAPIObject __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Application )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ IApplication __RPC_FAR *__RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Type )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ /* external definition not present */ KompasAPIObjectTypeEnum __RPC_FAR *Type);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Reference )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XOld )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XOld )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YOld )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YOld )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_XNew )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_XNew )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_YNew )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_YNew )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Scale )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Scale )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_AttributeCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AttributeCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_DimensionLineScale )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DimensionLineScale )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SpecificationObjectCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SpecificationObjectCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepFactor1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepFactor1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count1 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *Val);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Angle2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Angle2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Step2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ double Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Step2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ double __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_StepFactor2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_StepFactor2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Count2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ long Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count2 )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SaveCornersCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SaveCornersCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        /* [helpcontext][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SaveCentreCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL Val);
        
        /* [helpcontext][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SaveCentreCopy )( 
            IMeshCopyObjectParam __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);
        
        END_INTERFACE
    } IMeshCopyObjectParamVtbl;

    interface IMeshCopyObjectParam
    {
        CONST_VTBL struct IMeshCopyObjectParamVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMeshCopyObjectParam_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMeshCopyObjectParam_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMeshCopyObjectParam_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMeshCopyObjectParam_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMeshCopyObjectParam_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMeshCopyObjectParam_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMeshCopyObjectParam_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMeshCopyObjectParam_get_Parent(This,PVal)	\
    (This)->lpVtbl -> get_Parent(This,PVal)

#define IMeshCopyObjectParam_get_Application(This,PVal)	\
    (This)->lpVtbl -> get_Application(This,PVal)

#define IMeshCopyObjectParam_get_Type(This,Type)	\
    (This)->lpVtbl -> get_Type(This,Type)

#define IMeshCopyObjectParam_get_Reference(This,PVal)	\
    (This)->lpVtbl -> get_Reference(This,PVal)


#define IMeshCopyObjectParam_put_XOld(This,Val)	\
    (This)->lpVtbl -> put_XOld(This,Val)

#define IMeshCopyObjectParam_get_XOld(This,PVal)	\
    (This)->lpVtbl -> get_XOld(This,PVal)

#define IMeshCopyObjectParam_put_YOld(This,Val)	\
    (This)->lpVtbl -> put_YOld(This,Val)

#define IMeshCopyObjectParam_get_YOld(This,PVal)	\
    (This)->lpVtbl -> get_YOld(This,PVal)

#define IMeshCopyObjectParam_put_XNew(This,Val)	\
    (This)->lpVtbl -> put_XNew(This,Val)

#define IMeshCopyObjectParam_get_XNew(This,PVal)	\
    (This)->lpVtbl -> get_XNew(This,PVal)

#define IMeshCopyObjectParam_put_YNew(This,Val)	\
    (This)->lpVtbl -> put_YNew(This,Val)

#define IMeshCopyObjectParam_get_YNew(This,PVal)	\
    (This)->lpVtbl -> get_YNew(This,PVal)

#define IMeshCopyObjectParam_put_Scale(This,Val)	\
    (This)->lpVtbl -> put_Scale(This,Val)

#define IMeshCopyObjectParam_get_Scale(This,PVal)	\
    (This)->lpVtbl -> get_Scale(This,PVal)

#define IMeshCopyObjectParam_put_Angle(This,Val)	\
    (This)->lpVtbl -> put_Angle(This,Val)

#define IMeshCopyObjectParam_get_Angle(This,PVal)	\
    (This)->lpVtbl -> get_Angle(This,PVal)

#define IMeshCopyObjectParam_put_AttributeCopy(This,Val)	\
    (This)->lpVtbl -> put_AttributeCopy(This,Val)

#define IMeshCopyObjectParam_get_AttributeCopy(This,PVal)	\
    (This)->lpVtbl -> get_AttributeCopy(This,PVal)

#define IMeshCopyObjectParam_put_DimensionLineScale(This,Val)	\
    (This)->lpVtbl -> put_DimensionLineScale(This,Val)

#define IMeshCopyObjectParam_get_DimensionLineScale(This,PVal)	\
    (This)->lpVtbl -> get_DimensionLineScale(This,PVal)

#define IMeshCopyObjectParam_put_SpecificationObjectCopy(This,Val)	\
    (This)->lpVtbl -> put_SpecificationObjectCopy(This,Val)

#define IMeshCopyObjectParam_get_SpecificationObjectCopy(This,PVal)	\
    (This)->lpVtbl -> get_SpecificationObjectCopy(This,PVal)


#define IMeshCopyObjectParam_put_Angle1(This,Val)	\
    (This)->lpVtbl -> put_Angle1(This,Val)

#define IMeshCopyObjectParam_get_Angle1(This,Val)	\
    (This)->lpVtbl -> get_Angle1(This,Val)

#define IMeshCopyObjectParam_put_Step1(This,Val)	\
    (This)->lpVtbl -> put_Step1(This,Val)

#define IMeshCopyObjectParam_get_Step1(This,PVal)	\
    (This)->lpVtbl -> get_Step1(This,PVal)

#define IMeshCopyObjectParam_put_StepFactor1(This,Val)	\
    (This)->lpVtbl -> put_StepFactor1(This,Val)

#define IMeshCopyObjectParam_get_StepFactor1(This,PVal)	\
    (This)->lpVtbl -> get_StepFactor1(This,PVal)

#define IMeshCopyObjectParam_put_Count1(This,Val)	\
    (This)->lpVtbl -> put_Count1(This,Val)

#define IMeshCopyObjectParam_get_Count1(This,Val)	\
    (This)->lpVtbl -> get_Count1(This,Val)

#define IMeshCopyObjectParam_put_Angle2(This,Val)	\
    (This)->lpVtbl -> put_Angle2(This,Val)

#define IMeshCopyObjectParam_get_Angle2(This,PVal)	\
    (This)->lpVtbl -> get_Angle2(This,PVal)

#define IMeshCopyObjectParam_put_Step2(This,Val)	\
    (This)->lpVtbl -> put_Step2(This,Val)

#define IMeshCopyObjectParam_get_Step2(This,PVal)	\
    (This)->lpVtbl -> get_Step2(This,PVal)

#define IMeshCopyObjectParam_put_StepFactor2(This,Val)	\
    (This)->lpVtbl -> put_StepFactor2(This,Val)

#define IMeshCopyObjectParam_get_StepFactor2(This,PVal)	\
    (This)->lpVtbl -> get_StepFactor2(This,PVal)

#define IMeshCopyObjectParam_put_Count2(This,Val)	\
    (This)->lpVtbl -> put_Count2(This,Val)

#define IMeshCopyObjectParam_get_Count2(This,PVal)	\
    (This)->lpVtbl -> get_Count2(This,PVal)

#define IMeshCopyObjectParam_put_SaveCornersCopy(This,Val)	\
    (This)->lpVtbl -> put_SaveCornersCopy(This,Val)

#define IMeshCopyObjectParam_get_SaveCornersCopy(This,PVal)	\
    (This)->lpVtbl -> get_SaveCornersCopy(This,PVal)

#define IMeshCopyObjectParam_put_SaveCentreCopy(This,Val)	\
    (This)->lpVtbl -> put_SaveCentreCopy(This,Val)

#define IMeshCopyObjectParam_get_SaveCentreCopy(This,PVal)	\
    (This)->lpVtbl -> get_SaveCentreCopy(This,PVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_Angle1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB IMeshCopyObjectParam_put_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_Angle1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *Val);


void __RPC_STUB IMeshCopyObjectParam_get_Angle1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_Step1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB IMeshCopyObjectParam_put_Step1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_Step1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_Step1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_StepFactor1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IMeshCopyObjectParam_put_StepFactor1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_StepFactor1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_StepFactor1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_Count1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB IMeshCopyObjectParam_put_Count1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_Count1_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *Val);


void __RPC_STUB IMeshCopyObjectParam_get_Count1_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_Angle2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB IMeshCopyObjectParam_put_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_Angle2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_Angle2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_Step2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ double Val);


void __RPC_STUB IMeshCopyObjectParam_put_Step2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_Step2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ double __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_Step2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_StepFactor2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IMeshCopyObjectParam_put_StepFactor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_StepFactor2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_StepFactor2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_Count2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ long Val);


void __RPC_STUB IMeshCopyObjectParam_put_Count2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_Count2_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_Count2_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_SaveCornersCopy_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IMeshCopyObjectParam_put_SaveCornersCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_SaveCornersCopy_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_SaveCornersCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_put_SaveCentreCopy_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL Val);


void __RPC_STUB IMeshCopyObjectParam_put_SaveCentreCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpcontext][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMeshCopyObjectParam_get_SaveCentreCopy_Proxy( 
    IMeshCopyObjectParam __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *PVal);


void __RPC_STUB IMeshCopyObjectParam_get_SaveCentreCopy_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMeshCopyObjectParam_INTERFACE_DEFINED__ */


DEFINE_GUID(CLSID_MeshCopyObjectParam,0xFF54BE1B,0x3B35,0x4b01,0x98,0x5D,0x8D,0x69,0x60,0x86,0xF7,0xE7);

#ifdef __cplusplus

class DECLSPEC_UUID("FF54BE1B-3B35-4b01-985D-8D696086F7E7")
MeshCopyObjectParam;
#endif

DEFINE_GUID(CLSID_PrintJob,0x87DAB0E6,0xB749,0x47fc,0x8E,0x02,0x76,0xDA,0xC0,0x43,0x9C,0x81);

#ifdef __cplusplus

class DECLSPEC_UUID("87DAB0E6-B749-47fc-8E02-76DAC0439C81")
PrintJob;
#endif

DEFINE_GUID(CLSID_PrintJob_Sheet,0xF035E79B,0x1F65,0x42c6,0xAB,0x49,0x49,0x8C,0x65,0xCC,0x2E,0x1F);

#ifdef __cplusplus

class DECLSPEC_UUID("F035E79B-1F65-42c6-AB49-498C65CC2E1F")
PrintJob_Sheet;
#endif

DEFINE_GUID(CLSID__Property,0x9699D02A,0x6FF3,0x4c25,0x89,0x74,0x5E,0xB5,0x27,0x02,0x43,0x15);

#ifdef __cplusplus

class DECLSPEC_UUID("9699D02A-6FF3-4c25-8974-5EB527024315")
_Property;
#endif

DEFINE_GUID(CLSID_LibArraySettings,0x19144A91,0x0D9F,0x4906,0xAF,0xD0,0xBE,0xFB,0x56,0x25,0x66,0x2D);

#ifdef __cplusplus

class DECLSPEC_UUID("19144A91-0D9F-4906-AFD0-BEFB5625662D")
LibArraySettings;
#endif

DEFINE_GUID(CLSID_ReportProcess,0x2A2F00CE,0x536E,0x462d,0xB5,0x54,0x58,0x09,0xCD,0xE3,0x10,0x95);

#ifdef __cplusplus

class DECLSPEC_UUID("2A2F00CE-536E-462d-B554-5809CDE31095")
ReportProcess;
#endif

DEFINE_GUID(CLSID_Equidistants3D,0xD5ABFF52,0xA8A7,0x45cb,0xBD,0xCD,0x10,0x3F,0xDF,0xEF,0x3E,0x3E);

#ifdef __cplusplus

class DECLSPEC_UUID("D5ABFF52-A8A7-45cb-BDCD-103FDFEF3E3E")
Equidistants3D;
#endif

DEFINE_GUID(CLSID_Equidistant3D,0x948EB787,0x026E,0x4990,0x8A,0x92,0xB6,0xB3,0xF2,0x5D,0x4D,0x7C);

#ifdef __cplusplus

class DECLSPEC_UUID("948EB787-026E-4990-8A92-B6B3F25D4D7C")
Equidistant3D;
#endif
#endif /* __KompasAPI7_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif
